如何获取回调函数的返回值[API Request]

时间:2017-07-19 07:44:54

标签: javascript node.js callback request ecmascript-5

我想做一个API请求,并在我网站的表格中显示正文。我使用Node.JS,React和Request。这是我的代码:



var requestResult = Request.get('https://test.ipdb.io/api/v1/assets/?search=asdf', (err, res, body) => {
  return body;
});




这显然不起作用。我可以使用console.log(body),但我希望API响应在回调函数之外可用。这可能吗?

1 个答案:

答案 0 :(得分:2)

如果你正在使用回调方法,那么你应该继续你的回调功能。
例如:

app.get('/', function(req, res, next) {
  Request.get('https://test.ipdb.io/api/v1/assets/?search=asdf', (err, res, body) => {
    console.log(body);
    // do any other job here
    res.send(body);
  });
});

2017年可以使用的其他方法:

  • promises
  • coroutines + generators
  • async + await

您可以获得更多信息here