繁体   English   中英

node.js request.get()无法弄清楚如何返回响应

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM