繁体   English   中英

我的EXPRESS / NodeJs响应错误中无法访问值[String:'Error:Request return error code:404

[英]Cant access values in my EXPRESS / NodeJs response error [String: 'Error: Request returned error code: 404

我正在尝试访问我的快速响应错误中的值。 当我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以便将其发送给客户端。

请参考此问题以获取Express NodeJS应用中的更多解析错误响应

如果我没看错,express使用standard中定义的通用错误对象,并且只有三个属性:

Error.prototype.constructor
指定创建实例原型的函数。
错误原型消息
错误信息。
Error.prototype.name
错误名称。

一些库(例如mongoose)使用自定义错误对象,因此您可以访问更多错误详细信息(和属性),如果是这种情况,则可以尝试在的官方文档中查找“错误处理”一章。该库,并查看错误对象中是否有更多详细信息。 在这种情况下,我认为您不会使用express提供的err对象,而是使用库方法提供的err ,这会引起错误,有点像:

...
app.use((err, req, res, next)=>{
 library.method((err1, data)=>{
  console.log(err1);// use this error object
 })
})
... 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM