为什么我的JSON.parse失败了?Ruby on Rails

wol*_*600 4 ruby json open-uri flickr ruby-on-rails

我正在尝试将Flickr API中的图像加载到Ruby on Rails应用程序中,但我在JSON.parse()行上获得了"Unexpected Token".

我在这里找到了另一个响应,其中返回的JSON将双引号转义出来,解决方案是将.gsub事件添加到最后,但我仍然收到错误.

谁知道问题是什么?

def add

@jsonresults = open("http://api.flickr.com/services/rest/?method=flickr.interestingness.getList&api_key=bb398c11934abb6d51bdd720020f6a4a&per_page=1&page=1&format=json&nojsoncallback=1").read
@images = JSON.parse(@jsonresults.to_json.gsub('\"', '"'))

end
Run Code Online (Sandbox Code Playgroud)

错误:

JSON::ParserError in ImagesController#add

757: unexpected token at '"{"photos":{"page":1, "pages":500, "perpage":1, "total":500, "photo":[{"id":"8234011021", "owner":"24066605@N07", "secret":"b4c05df8c5", "server":"8341", "farm":9, "title":"Crescent Lake", "ispublic":1, "isfriend":0, "isfamily":0}]}, "stat":"ok"}"'
Run Code Online (Sandbox Code Playgroud)

Joh*_*gle 5

通话回来的json看起来很好.将解析更改为:

@images = JSON.parse(@jsonresults)
Run Code Online (Sandbox Code Playgroud)