我有一个使用本机nodejs http模块的api A调用apiB。现在,我想捕获由api B抛出的自定义错误(该错误会返回承诺并在失败时拒绝)向api A抛出。但是无论如何,即使Api B抛出了400的超时,我仍然认为它是在Api A中带有错误体的200 。似乎未响应响应错误事件。我可以尝试检查状态码并拒绝诺言,但我不想这样做。有没有办法可以避免这种情况。任何帮助将不胜感激。
下面是这里的代码
res.on('data', function(chunk) {
body = body + chunk
logger.info(`Test response code1--->`+body)
})
res.on('end', function() {
body = parseJSON(body)
logger.info(`Test response code2--->`+body)
resolve(body)
})
res.on('error', e => {
logger.info(`error encontered when intreacting =>${options.host}/${options.path}`)
logger.error(`error encontered with response==> ${e.message}`)
reject(e)
})