0

我正在使用 HTTParty 调用 Flickr API。我得到了回应,但它已经逃脱了。我怎样才能得到简单明了的 json?>

class Flickr

  require 'httparty'
  include HTTParty

  API_KEY         = '2e18b933c285b552701e7c6f5bff3aee'
  SECRET          = '88123767bb4492b2'
  USER_ID         = '57951266@N03'
  RESPONSE_FORMAT = 'json'
  base_uri          'http://api.flickr.com'

  # Get list of all collections
  def self.collections_list
    response = get("/services/rest/",
      :query => {
        method:          'flickr.collections.getTree',
        api_key:         API_KEY,
        user_id:         USER_ID,
        format:          RESPONSE_FORMAT,
        nojsoncallback:  1
      }
    )

    response.body

  end

这是response.body返回的内容:如何禁用阻止它成为有效 json 的转义?

=> "{\"collections\":{\"collection\":[{\"id\":\"579244212-72157632934521433434033423\", \"title\":\"mysite.co.uk\", \ "说明\":\"\", \"iconlarge\":\"\/images\/collection_default_l.gif\", \"iconsmall\":\"\/images\/collection_default_s.gif\", \"收藏\":[{\"id\":\"5723456928212-72157634949706778\", \"title\":\"Holidays\", \"description\":\"\", \"iconlarge\":\ "\/images\/collection_default_l.gif\", \"iconsmall\":\"\/images\/collection_default_s.gif\", \"collection\":[{\"id\":\"5792364528212-7215763492346543457291 \", \"标题\":\"标准\", \"描述\":\"\", \"iconlarge\":\"\/images\/collection_default_l.gif\", \"iconsmall\":\"\/images\/collection_default_s.gif\", \"set \":[{\"id\":\"72157628982366181735\", \"title\":\"Paris Trip\", \"description\":\"11th-13th May 2008 - (Peeps)\"} , {\"id\":\"72157629097324306\", \"title\":\"Ohio\", \"description\":\"2005 年 8 月 - (Peeps)\"}, {\"id\" :\"72157629097297760\", \"title\":\"Iceland Holiday\", \"description\":\"5th-16th Aug 2004 - (Peeps)\"}]}, {\"id\": \"57928212-236572157629691182748\", \"标题\":\"1 - 旅行\", \"描述\":\"\", \"iconlarge\":\"\/images\/collection_default_l.gif\", \"iconsmall\":\"\/images\/collection_default_s.gif\", \"set\":[{\"id\": \"72157629683532365562\", \"title\":\"Day 1\", \"description\":\"\"}, {\"id\":\"72157629683246523541696\", \"title\": \"第 2 天\", \"描述\":\"\"}, {\"id\":\"7215762968234563554852\", \"标题\":\"第 3 天\", \"描述\" :\"\"}, {\"id\":\"7215762972346510465912\", \"title\":\"第 4 天\", \"描述\":\"\"}, {\"id\ ":\"72157362629710474644\", \"title\":\"Day 5 South\", \"description\":\"\"}, {\"id\":\"7215762923564710489442\", \"title\":\"第 6 天 \", \"description\":\"\"}, {\"id\":\"721576292346834618028 \", \"title\":\"第 7 天 i\", \"description\":\"\"}, {\"id\":\"721576265349834637138\", \"title\":\"第 8 天\", \"说明\":\"\"}, {\"id\":\"72157629236836419418\", \"标题\":\"第 9 天\", \"说明\":\ "\"}, {\"id\":\"7215762985641123596\", \"title\":\"第 10 天\", \"描述\":\"\"}, {\"id\": \"72157629854631700916\", \"title\":\"Day 11 & 12\", \"description\":\"\"}, {\"id\":\"721576223649851713058\", \"title\":\"Day 13,14 & 15 -\", \"description\":\"\"}]}, {\"id\":\ "57928212-72236157629866347760\", \"title\":\"2 - Trip 2010\", \"description\":\"\", \"iconlarge\":\"\/images\/collection_default_l.gif\ ", \"iconsmall\":\"\/images\/collection_default_s.gif\", \"set\":[{\"id\":\"721576292346866337538\", \"title\":\"天0 - 到达....\"\", \"iconlarge\":\"\/images\/collection_default_l.gif\", \"iconsmall\":\"\/images\/collection_default_s.gif\", \"set\":[ {\"id\":\"721576292346866337538\", \"title\":\"第 0 天 - 到达 ....\"\", \"iconlarge\":\"\/images\/collection_default_l.gif\", \"iconsmall\":\"\/images\/collection_default_s.gif\", \"set\":[ {\"id\":\"721576292346866337538\", \"title\":\"第 0 天 - 到达 ....

4

1 回答 1

1

response.to_json会给你正确的JSON。 JSON.parse(response.to_json)会将 JSON 转换为哈希/数组/等的 ruby​​ 哈希。

于 2013-10-28T22:58:23.467 回答