在我的 Controller 中,我有以下代码...
response = HTTParty.get('https://graph.facebook.com/zuck')
logger.debug(response.body.id)
我收到一个 NoMethodError/undefined 方法 `id'
如果我这样做...
logger.debug(response.body)
它按预期输出...
{"id":"4","name":"Mark Zuckerberg","first_name":"Mark","last_name":"Zuckerberg","link":"http:\/\/www.facebook.com\/zuck","username":"zuck","gender":"male","locale":"en_US"}
有人会认为它是 response.body.id,但显然这是行不通的。提前致谢!
最佳答案
试试这个:
body = JSON.parse(response.body)
id = body["id"]
对于这种事情,我建议 a) 使用 Koala或者 b) 使用 httparty 创建一个类。然后你可以设置 format: json
来自动解析返回的 json。参见 here和 here
关于ruby-on-rails - 在带有 HTTPParty 的 Controller 中解析 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18320642/