每当我在mysql中输入重复的条目时,都会抛出此错误。
{ [Error: ER_DUP_ENTRY: Duplicate entry 'sample@gmail.com' for key 'email
'] code: 'ER_DUP_ENTRY', errno: 1062, sqlState: '23000', index: 0 }
我想要做的是将此Error对象转换为字符串。我尝试使用JSON.stringify(),当我在控制台上打印时,只有最后一部分被转换为字符串:
{"code":"ER_DUP_ENTRY","errno":1062,"sqlState":"23000","index":0}
我需要转换第一部分以及错误,即[]中的一部分,以便我能够正确诊断重复项。每当我将Error对象转换为字符串时,如何检索该部分?
答案 0 :(得分:17)
由于Error对象的格式化方式,我认为我必须使用JSON来解决这个问题。我如何解决这个只是使用
err.toString()
答案 1 :(得分:1)
以备将来参考,以防万一您希望提取错误消息。使用error.message
提取邮件。以下是参考:https://nodejs.org/api/errors.html#errors_error_message
答案 2 :(得分:0)
要获取完整的堆栈,请使用stack
对象的Error
属性:
console.log(error.stack)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/stack