модуль ActiveSupport::JSON
Константы
- DATE_REGEX
-
соответствует датам в формате YAML
Публичные методы класса
Парсит строку JSON (JavaScript Объект Notation) в хэш. Смотрите www.json.org для получения дополнительной информации.
ActiveSupport::JSON.decode("{\"team\":\"rails\",\"players\":\"36\"}")
=> {"team" => "rails", "players" => "36"} # File activesupport/lib/active_support/json/decoding.rb, line 19
def decode(json, options = {})
if options.present?
raise ArgumentError, "In Rails 4.1, ActiveSupport::JSON.decode no longer " "accepts an options hash for MultiJSON. MultiJSON reached its end of life " "and has been removed."
end
data = ::JSON.parse(json, quirks_mode: true)
if ActiveSupport.parse_json_times
convert_dates_from(data)
else
data
end
end Выгружает объекты в формате JSON (JavaScript Объект Notation). Смотрите www.json.org для получения дополнительной информации.
ActiveSupport::JSON.encode({ team: 'rails', players: '36' })
# => "{\"team\":\"rails\",\"players\":\"36\"}"
# File activesupport/lib/active_support/json/encoding.rb, line 20 def self.encode(value, options = nil) Encoding.json_encoder.new(options).encode(value) end
Возвращает класс ошибки, которая будет поднята при ошибке декодирования JSON. Использование этого метода означает, что вы не будете напрямую зависеть от реализации JSON ActiveSupport, в случае ее изменения в будущем.
begin
obj = ActiveSupport::JSON.decode(some_string)
rescue ActiveSupport::JSON.parse_error
Rails.logger.warn("Attempted to decode invalid JSON: #{some_string}")
end
# File activesupport/lib/active_support/json/decoding.rb, line 45 def parse_error ::JSON::ParserError end
© 2004–2016 David Heinemeier Hansson
Licensed under the MIT License.