【发布时间】:2013-01-29 01:11:14
【问题描述】:
当我尝试将 Rails 从 2.3.15 升级到 2.3.16 时,ActiveSupport::JSON.decode(response.body) 无法处理 NaN。
我收到如下错误:invalid character at "NaN,...
有人知道怎么解决吗?
【问题讨论】:
标签: ruby-on-rails security yaml json
当我尝试将 Rails 从 2.3.15 升级到 2.3.16 时,ActiveSupport::JSON.decode(response.body) 无法处理 NaN。
我收到如下错误:invalid character at "NaN,...
有人知道怎么解决吗?
【问题讨论】:
标签: ruby-on-rails security yaml json
ActiveSupport::JSON.decode 在后台使用MultiJson,这往往会忽略任何传入的选项(至少在 Rails 3 中,不确定 2.3)。这意味着您不能传入通常接受的allow_nan 选项。
但是,如果您使用的是 Ruby 1.9+,则可以使用内置的 JSON 解析器:
require 'json'
json_result = JSON.parse(response.body, allow_nan: true)
【讨论】: