繁体   English   中英

如何通过Node.js中的请求返回JSON(来自javascript)?

[英]How to return JSON via request in node.js (from javascript)?

我正在使用'request'模块从facebook API获取JSON对象:

exports.userInfo = function (userID, accessToken){
request.get({url: facebookAPI.ME + accessToken, json: true}, function(error, response, user){
    if (error) {
        console.log(error);
    } else {
        if (typeof(user) !== 'undefined'){
            return User;
        }

    }
});

};

但是,如果从外部调用此搜寻器,则不会返回有效的JSON对象。

var crawler = require('./helper/crawler');
console.log(crawler.userInfo(userID, accessToken)); 

我怎样才能做到这样,当请求返回有效的JSON对象并将该有效的JSON对象返回给userInfo函数时?

谢谢。

由于请求是异步的并触发了回调,因此您不能在其中使用return。 您必须将回调传递给crawler.userInfo,如下所示:

exports.userInfo = function (userID, accessToken, callback){
  request.get({
    url: facebookAPI.ME + accessToken,
    json: true
  }, callback);
};

然后从外面

var crawler = require('./helper/crawler');
crawler.userInfo(userID, accessToken, function (error, response) {
  console.log(response);
}); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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