module ActiveSupport::JSON
Constants
- DATETIME_REGEX
- DATE_REGEX
matches YAML-formatted dates
Public Class Methods
decode(json)
click to toggle source
Parses a JSON string (JavaScript Object Notation) into a hash. See www.json.org for more info.
ActiveSupport::JSON.decode("{\"team\":\"rails\",\"players\":\"36\"}")
=> {"team" => "rails", "players" => "36"}
# File lib/active_support/json/decoding.rb, line 21 def decode(json) data = ::JSON.parse(json, quirks_mode: true) if ActiveSupport.parse_json_times convert_dates_from(data) else data end end
encode(value, options = nil)
click to toggle source
Dumps objects in JSON (JavaScript Object Notation). See www.json.org for more info.
ActiveSupport::JSON.encode({ team: 'rails', players: '36' }) # => "{\"team\":\"rails\",\"players\":\"36\"}"
# File lib/active_support/json/encoding.rb, line 20 def self.encode(value, options = nil) Encoding.json_encoder.new(options).encode(value) end
parse_error()
click to toggle source
Returns the class of the error that will be raised when there is an error in decoding JSON. Using this method means you won't directly depend on the ActiveSupport's JSON implementation, in case it changes in the future.
begin obj = ActiveSupport::JSON.decode(some_string) rescue ActiveSupport::JSON.parse_error Rails.logger.warn("Attempted to decode invalid JSON: #{some_string}") end
# File lib/active_support/json/decoding.rb, line 41 def parse_error ::JSON::ParserError end