【发布时间】:2015-01-15 17:54:50
【问题描述】:
我从 API 收到一个 JSON 响应,但是该响应有几个关键参数,它们都称为“夹克”,具有不同的值。我能够解析出第一个键,但我没有得到其余的值。这是一些代码,我可能以错误的方式接近这个:
parsed_list = JSON.parse(get_response.body)
orig = parsed_list["_links"]["stuff"]["orig"]
serv = parsed_list["_links"]["stuff"]["serv"]
puts orig.first["jacket"]
puts serv.first["jacket"]
=> 123456789
=> 987654321
这是我解析出 JSON 响应并将其设置为“parsed_list”之前的样子
"_links": {
"self": {
"href": "url"
},
"stuff": {
"href": "url",
"orig": [
{
"jacket": "123456789",
"Id": "x",
"selected": true,
}
],
"serv": [
{
"jacket": "987654321",
"Id": "xx",
"selected": false,
},
{
"jacket": "0000000001",
"Id": "xx",
"selected": false,
},
{
"jacket": "1111111110",
"Id": "xx",
"selected": false,
}
]
}
}
}
我需要能够提取所有“夹克”值。
【问题讨论】:
-
您如何尝试获取其余值?当然不是
first。此外,编辑您的问题以清理原始 JSON 的格式——代码块后悬空的“}}”。 -
哎呀,抱歉,忽略了这一点;固定的。我最终使用了 .first ,因为没有它我得到错误 `[]': no implicit conversion of String into Integer (TypeError)。我一直在弄清楚如何获得其余的值。