我正在尝试访问我的快速响应错误中的值。当我控制台时.log这样的错误...
app.use(function(err, req, res, next){
console.log(err)
});
控制台如下所示
[String: 'Error: Request returned error code: 404 and body: {"status":404,"title":"No option(s) were found with this query.","type":"https://developer.bigcommerce.com/api#api-status-codes"}']
例如,我如何访问err.title
以便我可以将其发送到客户端。
有关快速 NodeJS 应用程序中的更多解析错误响应,请参阅此问题
如果我没记错的话,express 使用标准中定义的通用错误对象,并且只有三个属性:
Error.prototype.constructor
指定创建 实例的原型。
错误.原型.消息
错误信息。
Error.prototype.name错误名称。
一些库(例如猫鼬)使用自定义错误对象,因此您可以访问更多错误详细信息(和属性),如果是这种情况,您可以尝试在该库的官方文档中查找"错误处理"章节,看看错误对象中是否有更多详细信息。在这种情况下,我认为您不会使用 express 提供的err
对象,而是使用 library 方法提供的err
,这会引起错误,有点像:
...
app.use((err, req, res, next)=>{
library.method((err1, data)=>{
console.log(err1);// use this error object
})
})
...