[英]node.js request.get() can't figure out how to return response
我在node.js中運行以下命令:
function makeGetFunction(url) {
url = url + '?' + authstring;
console.log("get " + url);
request.get(url, function(e, r, data) {
var json = JSON.parse(data);
var resp = json.entities;
});
}
我想讓makeGetFunction()返回resp。 我認為答案就在於使用回調,但是由於我對javascript中的異步調用還很陌生,因此我對如何正確實現它感到困惑。 我還找不到與我的問題相關的任何示例或帖子。 請原諒新手問題。
由於該過程涉及異步調用,因此最好的選擇是通過添加回調參數來遵循makeGetFunction
的相同模式:
function makeGetFunction(url, callback) {
url = url + '?' + authstring;
console.log("get " + url);
request.get(url, function(e, r, data) {
var json = JSON.parse(data);
var resp = json.entities;
callback(resp);
});
}
使用makeGetFunction
,將其傳遞給處理函數,而不是獲取返回值:
makeGetFunction('www.myurl.net/what', function(resp) {
// do stuff with response
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.