首页 > 解决方案 > 如何在现有 Ruby 代码中查找 JSON 解析错误

问题描述

首先让我说,虽然我是一名程序员,但 Ruby 对我来说还是很陌生的。我正在尝试修复由其他开发人员创建的应用程序,但我找不到问题。运行代码时,我收到以下错误:

JSON::ParserError: unexpected token at '{
  "account":"xxxxxxx",
  "role":"3",
  "email":"xxxx@xxxxxxxx.com",
  "password":'xxxxxxxxxxxx',
  "connect_host":"xxxxxxx.xxxxxxx.api.xxxxxxxx.com"
}
'

帐户是数字。电子邮件是标准/无特殊字符。密码确实有特殊字符,其中一个是双引号,这就是为什么它用单引号括起来。连接主机只是一个带有字母数字字符的 URL。我已经用谷歌搜索了很多,但我想出的结果是处理试图逃避某些字符的人。我希望另一双眼睛能看到我缺少的东西。

标签: jsonruby

解决方案


根据您在上面粘贴的 JSON,错误是使用单引号来表示"password"其值为'xxxxxxxxxxxx'.

它需要在双引号中,因此将其更改为:

"password":"xxxxxxxxxxxx",

如果您控制设置输入的代码,则进行更改,否则您将不得不通过此答案(这是 JS 但演示了概念)来处理更改单引号的用法,将字符串解析为带单引号的 JSON?


推荐阅读