[英]how to return a value or string from call back function in Nodejs, mongooose
[英]NodeJS, how to return value from request call to main function?
我編寫了以下代碼。 當數據可用於主viewPage
頁面 function 時,如何從request
塊返回html
?
const request = require('request');
let viewPage = (url) => {
request({url:url,headers:headers,method:'GET'},(error,response,html) => {
let stockStatus = null;
if(!error && response.statusCode == 200) {
//...return html variable from here
} else {
}
});
return html
}
當我調用result = viewPage(URL)
時它返回空/null,因為數據尚未到達。
API 請求調用是異步的,您無需等待它完成。
var rp = require("request-promise");
let viewPage = (url) => {
return rp({ uri: url, headers: headers, method: "GET" })
.then(function (html) {
// Do something or check
return html;
})
.catch(function (err) {
console.log(err);
return err;
});
};
async function some() {
var result = await viewPage(URL);
}
使用 Axios 得到類似結果。
const axios = require('axios').default;
async function viewPage(url, headers = {}) {
const response = await axios({
method: 'get',
url: url,
headers: headers
});
return response?.data;
}
async function run() {
const pageData = await viewPage("URL");
return console.log(pageData);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.