我是NodeJS的新手。我有一个异步函数
request({url: 'url',json: true}, function (error, response, body) {});
我想在调用此函数后才调用函数。我不能在这里打电话给.then()。这种情况的其他替代方案是什么?
答案 0 :(得分:4)
你可以试试这样的事情
return new Promise(resolve => {
request({
url: "",
method: "",
headers: {},
json: true
}, function (error, response, body) {
if(!error)
resolve(body);
})
}).then(value => {
// process value here
})
答案 1 :(得分:0)
将其作为回调函数传递:
function callback (err, res, body) {
// Do what needs to be done here.
}
request({ url: 'url, json: true }, callback);
在回调函数的开头,检查是否存在err
,如果存在,则处理错误。
这article可能会对您有所帮助。
如果异步函数返回Promise,则只能调用then
。但在你进入Promise之前,你应该了解Node.js的基础知识。