【发布时间】:2015-11-25 06:58:13
【问题描述】:
我正在使用 HTTParty 进行外部 API 调用,如下所示:
@result = HTTParty.get('some/url')
结果是一个带有数组的 3/4 层嵌套 JSON 对象(但结果并不总是相同,有时嵌套对象更多,有时数组更多,有时没有数组等,但它总是嵌套objects 嵌套对象与数组):
{
"something": "10100014",
"something": "025MH-V0625",
"something": null,
"something": null,
"something": "SALE",
"nested": {
"something": "DETACHED_HOUSE",
"something": null,
"something": "2014",
"something": 0,
"something": 138,
"something": 0,
"something": null,
"something": "A2010",
"something": "M2",
"nested": {
"something": "Tværagervej",
"something": "34A",
"something": "",
"something": null,
"something": "København S",
"something": "2300",
"something": "DK"
}
...
}
现在我需要迭代结果的键/值(包括嵌套的键/值),但是当我这样做时:
@result.respond_to?(:each)
或
@result["nested"].respond_to?(:each)
我收到了false。我也试过:
@n_result = @result.to_json
和
@n_result = JSON.parse(@result)
但在这两种情况下我都得到了false。有什么想法吗?
【问题讨论】:
标签: ruby-on-rails arrays ruby json hash