npm请求模块 - 返回一个值

时间:2016-08-06 17:33:42

标签: node.js request asynccallback

在请求文档中的一个示例中显示了此示例:

https://www.npmjs.com/package/request#custom-http-headers

var request = require('request');
var options = {
  url: 'https://api.github.com/repos/request/request',
  headers: {
    'User-Agent': 'request'
  }
};

function callback(error, response, body) {
  if (!error && response.statusCode == 200) {
    var info = JSON.parse(body);
    console.log(info.stargazers_count + " Stars");
    console.log(info.forks_count + " Forks");
  }
}

request(options, callback)

允许'说我希望变量信息的值返回给我。

我该怎么办?

1 个答案:

答案 0 :(得分:6)

您无法从异步命令传递值。 Node.js中最常用的策略是在函数中包含需要info变量的代码,并从回调中调用它。

例如:

function callback(error, response, body) {
  if (!error && response.statusCode == 200) {
    functionThatUsesInfo(info);
  }
}