【发布时间】:2019-01-23 08:02:19
【问题描述】:
我想让httpntlm 模块返回一个promise,它通过回调实现。
这是一个带有回调的工作版本:
httpntlm.get({
url,
username: 'username',
password: 'banana'
},
function (err, resx){
if(err) console.log(err);
else {
console.log(resx.headers);
console.log(resx.body);
}
});
这是我试图让它返回承诺的方法:
promisify(httpntlm.post(config, (error, response) => {
if (error) return errro
return response
}))
.then(res => console.log(res))
.catch(err => console.log(err))
但是promisify版本返回错误:
UnhandledPromiseRejectionWarning:TypeError [ERR_INVALID_ARG_TYPE]:“原始”参数必须是函数类型。接收类型未定义
我错过了什么?谢谢
【问题讨论】:
-
尝试删除箭头函数内的返回。并像这样写 promisify(httpntlm.post(config, (error, response) => { if (error) errro response }))
标签: node.js promise async-await es6-promise