我尝试使用使用异步的异步瀑布创建2个函数,通常它可以工作,但是在这种情况下,我尝试与Axios结合使用
(node:1512) UnhandledPromiseRejectionWarning: Error: Callback was already called.
我使用的功能就是这样
function postdata1(links, value, header = {}, callback1) {
var data = mydata
async.waterfall([
function (callback2) {
axios.post(links, data, {
headers: header
}).then(function (response) {
// handle success
//console.log(response);
if (response.status === 200) {
callback2(response.status, response.data)
return;
} else if (response.status === 500 || response.status === 404) {
callback2(response.status, response.data)
return;
}
}).catch(function (error) {
// handle error
callback2(error, null); --> the error come from here
return;
})
}, function (arg1, callback) {
Flagging(value.ID, (err, result) => {
if (err) {
callback(err, null)
} else {
callback(null, arg1);
}
})
}
], function (err, result) {
if (err) {
callback1(err,null);
}
else{
callback1(null,result);
}
});
}
我已经检查过几次了,但是我认为在此功能中没有循环,我是使用node.js的初学者,以前从未使用过Axios,那Axios会做一些循环吗?或执行2次异步生成的任何解决方案,一种是调用外部API,另一种是更新数据库。
标记功能是将查询更新到我的数据库