gpt4 book ai didi

javascript - 给定 JSON 中的第一行是什么?

转载 作者:行者123 更新时间:2023-12-03 22:42:29 34 4
gpt4 key购买 nike

在 nodeJs 中使用 Sequelize 时,我从 Sequelize 收到此错误,如下所示:

{ [SequelizeUniqueConstraintError: Validation error]
  name: 'SequelizeUniqueConstraintError',
  message: 'Validation error',
  errors: 
   [ { message: 'unique_identifier_UNIQUE must be unique',
       type: 'unique violation',
       path: 'unique_identifier_UNIQUE',
       value: 'authentication123456' } ],
  fields: { unique_identifier_UNIQUE: 'authentication123456' } }

错误本身非常清楚。但引起我注意的是这个 JSON 看起来很奇怪。
在此 JSON 的第一行中,您可以看到:

[SequelizeUniqueConstraintError: Validation error]



这不是字符串,也不是数组,甚至后面没有逗号将其与 JSON 中的下一行分开。

之后怎么样了?对我来说,它看起来像是一个评论或标题。但是这在 JSON 中是允许的吗?我没有找到任何引用资料来解释这一点。

最佳答案

好的,我明白这是从哪里来的。

这个错误是用 console.log(err) 命令打印的。它所做的是调用 err 对象的 toString 方法,该方法按原样格式化结果。
感谢@Pointy,我注意到这甚至不是 JSON,这让我明白了这个问题。因此,调用 JSON.stringify(err) 而不是 console.log(err),现在我们有了正确的 jSON 格式:

{
"name": "SequelizeUniqueConstraintError",
"message": "Validation error",
"errors": [
{
"message": "unique_identifier_UNIQUE must be unique",
"type": "unique violation",
"path": "unique_identifier_UNIQUE",
"value": "authentication123456"
}
],
"fields": {
"unique_identifier_UNIQUE": "authentication123456"
}
}

关于javascript - 给定 JSON 中的第一行是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33150612/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com