使用单引号传递字符串时的JSON ParseError

时间:2018-01-13 05:35:16

标签: ruby-on-rails json ruby

我正在制作一个ajax帖子,沿着一个带有逗号的字符串的json对象传递。当我进行ajax调用时,我在rails日志中得到了这个:

JSON::ParserError (822: unexpected token at ''"Word1","Word2","Word3"''):

我发送的数据对象如下所示:

{obj: { obj1: '"Word1", "Word2", "Word3"'}}

当我尝试在没有包装的单引号的情况下发送它时,在逗号处发生意外的令牌错误。

JSON::ParserError (822: unexpected token at ',"Word2","Word3"''):

任何人都可以破译错误消息吗?有没有办法在通过ajax传递时需要编码?

1 个答案:

答案 0 :(得分:1)

看起来您的数据对象是错误的。 {obj: { obj1: '"Word1", "Word2", "Word3"'}}甚至无效。每个键都必须有一个值。

如果obj1应该是一个数组,那么它必须有[]个密钥。以下是一个有效的JSON示例:

{
  "obj": {
    "obj1": ["Word1", "Word2", "Word3"]
  }
}

要验证您的JSON并避免浪费时间处理此类错误,请检查您的数据对象here