Ruby on rails Rails解析HTTPparty json响应

Ruby on rails Rails解析HTTPparty json响应,ruby-on-rails,json,Ruby On Rails,Json,我提出这样的要求: response = HTTParty.get("http://vimeo.com/api/v2/video/#{ id }.json") [{"id"=>44747277, "title"=>"ALPINIST feat. Chris O'Hara of PATSY O'HARA", ...}] 我的response.body确实是这样的: response = HTTParty.get("http://vimeo.com/api/v2/video/#{ i

我提出这样的要求:

response = HTTParty.get("http://vimeo.com/api/v2/video/#{ id }.json")
[{"id"=>44747277, "title"=>"ALPINIST feat. Chris O'Hara of PATSY O'HARA", ...}]
我的
response.body
确实是这样的:

response = HTTParty.get("http://vimeo.com/api/v2/video/#{ id }.json")
[{"id"=>44747277, "title"=>"ALPINIST feat. Chris O'Hara of PATSY O'HARA", ...}]

当我尝试response.body[“id”]时,它返回
id
,那么,我如何正确处理这个json呢?

您的json返回一个数组,因此要获取第一个元素的
id
,您应该执行以下操作:

response[0]['id']

您的JSON正在返回一个数组,因此要获取第一个元素的
id
,您应该执行以下操作:

response[0]['id']

response
是一个
HTTParty::response
对象
response.body
以字符串格式返回正文。要将其作为数组,请在对象上运行HTTParty方法。这将提供一个数组,您可以按照问题中描述的方式对其进行操作

response.parsed_response[0]['id'] #=> 44747277

response
是一个
HTTParty::response
对象
response.body
以字符串格式返回正文。要将其作为数组,请在对象上运行HTTParty方法。这将提供一个数组,您可以按照问题中描述的方式对其进行操作

response.parsed_response[0]['id'] #=> 44747277

你看,在你寻找的散列周围有一个数组?试试
body[0]['id']
@marianteisen,我认为这与返回值为
id
没有任何关系。不应该
response.body['id']
返回一个错误吗?
response.body[0]
返回
[
@Nikita,您可能想对问题做一个小的(但实质性的)修改,以显示数组出现在双引号内,这样它实际上是一个字符串。
response.body
真正返回的是“[{”id“=>44747277,”title“=>“阿尔卑斯壮举。帕特西·奥哈拉的克里斯·奥哈拉,…}]”。你看,你要找的散列周围有一个数组?试试
body[0]['id']
@mariansesen,我认为这与返回值
id
没有任何关系。不应该
response.body['id']
返回一个错误?
响应。body[0]
返回
[
@Nikita,您可能想对问题做一个小的(但实质性的)修改,以显示数组出现在双引号内,这样它实际上是一个字符串。
响应。body
真正返回的是“`[{”id=>44747277,“title”=>“登山运动员的壮举。帕特西·奥哈拉的克里斯·奥哈拉”,…}]“。为什么我们需要
解析的响应
?为什么我们需要
解析的响应