Ruby on Rails with ActiveSupport::JSON.decode中的JSON解析错误



这有效:

body = '{"name":"123"}'
json_string = ActiveSupport::JSON.decode body

但这失败了

body = '{"name":"123//"}'
json_string = ActiveSupport::JSON.decode body

如果我在字符串末尾添加一个空格,那么这也有效

body = '{"name":"123// "}'

我已经验证了 http://jsonlint.com/的所有 3 个 json 字符串

我正在使用Rails 2.2.2,任何人都可以帮助我解决这个问题。

我还尝试使用 JSON gemJSON.parse ,没有帮助,但

嗯确实

很有趣。似乎使用 ascii 表示法转义/是有效的(至少在我的 rails 版本中,即 3.2.1,所以它很可能不适用于您的版本)。我认为作为一种解决方法,如果它适用于您的版本,这应该没问题。ActiveSupport::JSON.decode "{\"foo\":\"\57\57\57\"}"

最新更新