ActiveSupport::JSON.decode issue

Good evening,

I’m having a rather odd JSON decoding issue when attempting to decode
an RPX JSON response containing the profile data.

Using the command test = ActiveSupport::JSON.decode, passing it the
string:

{“profile”:{“verifiedEmail”:“[email protected]”,“name”:
{“formatted”:“Test Name”},“address”:{“country”:"United Kingdom
"},“displayName”:“Test Name”,“preferredUsername”:“Test”,"url
":“http:\/\/www.rubycaster.com\/”,“gender”:“male”,"utcOffset
":“00:00”,“birthday”:“1971-02-10”,“providerName”:“MyOpenID”,
“primaryKey”:“2”,“identifier”:"http:\/\/test.myopenid.com\/
“,“email”:“[email protected]”},“stat”:“ok”}”

The command executes without any warning or exception. However when I
run the following on IRB I get an odd result:

irb(main):085:0> test[“profile”][“birthday”]
=> “19 1-02-10”

In the JSON string, if I replace “http:\/\/www.rubycaster.com\/”
with just “http” everything works as expected and the value gets
interpreted as an instance of the Date class.

Could someone help me find the right direction on this one? Rather
lost :wink:

Best regards,
DBA

Update:

After dropping the ActiveSupport JSON decoder for the parser available
at http://json.rubyforge.org/ everything started working as intended.

Best regards,
DBA

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs