我正在尝试记录我的错误并向通道发送通知。当我使用console.log()时,我得到错误消息的描述,但当我使用JSON.strigify时,它返回一个空对象。请问如何解决这个问题。
当我运行这段代码时:
console.log(err);
console.log("stringify", JSON.stringify(err));
我得到这样的回应:
ReferenceError: School is not defined
at /Users/macbookpro/Documents...
at Layer.handle [as handle_request] (/Users/macbookpro/Documents...
at next (/Users/macbookpro/Documents...
at adminAccess (/Users/macbookpro/Documents...
at processTicksAndRejections (node:internal/process/task_queues:96:5)
strinfify {}
我需要错误消息,为了使用axios成功发送它,我需要使用JSON.stringify()错误消息。
2条答案
按热度按时间byqmnocz1#
错误对象上的大多数属性都是non-enumerable,所以你需要这样做:
1sbrub3j2#
最简单的选择是向
JSON.stringify
添加附加参数错误对象属性是不可验证的,因此如果不显式指定它们,就无法获取它们。但是如果你获取属性名作为
JSON.stringify
的第二个参数,你就可以检索它们。