目前我的应用程序正在以下列方式解析 JSON:
OpenStruct.new(JSON.parse(json_string))
但这种方法存在问题:
- JSON 允许根级数
[{id: 1, name: "first"}, {id: 2, name: "second"}]
组,而 OpenStruct 无法处理它们引发异常。 - OpenStruct 不处理嵌套元素。
我找到了一些解决方案,例如 RecursiveOpenStruct 等。
- 他们处理嵌套哈希,但仍然无法处理顶级数组
- 嵌套到数组中的散列仍然是散列:
{data: [{id: 1, name: "first"}, {id: 2, name: "second"}]}
这里每个.data[i]
都是一个散列。