我正在尝试访问我的快速响应错误中的值。当我在console.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
以便我可以将其发送给客户。
答案 0 :(得分:0)
如果我没错,express使用standard中定义的通用错误对象,并且只有三个属性:
Error.prototype.constructor
指定创建的函数 实例的原型。
的 Error.prototype.message 强>
错误信息。
的 Error.prototype.name 强>
错误名称。
某些库(例如mongoose)使用自定义错误对象,因此您可以访问更多错误详细信息(和属性),如果是这种情况,您可以尝试查找“错误处理”一章。该库的官方文档,并查看错误对象中是否有更多详细信息。在这种情况下,我认为你不会使用快递提供的err
对象,而是使用库方法提供的err
来增加错误,有点像:
...
app.use((err, req, res, next)=>{
library.method((err1, data)=>{
console.log(err1);// use this error object
})
})
...