已经有类似的问题,但我对答案不满意,因为我正在尝试做一些更复杂的事情。
我有提供列表/单个对象的网络服务。对象是用户、类别等。这是对象的示例:
<UserObject name="foo" description="bar" category=<Category name="cat1" description="bar"> locations=[<Location id=1>, <Location id=2>] >
换句话说,对象有些复杂,可以是这些对象的数组。我正在寻找一种方法:
- 将这些对象序列化为 JSON 或 Hash 字符串
- 通过 HTTP 发送它们
- 将它们反序列化为 OpenStruct 对象
正在序列化对象的服务不是 ROR。接收和反序列化对象的应用程序是 ROR。
必须有一些通用的方法来做到这一点,我尝试使用to_json
,JSON.parse
但它只将对象反序列化到一个级别。所以例如上面我会得到:
<OpenStruct name="foo" description="bar" category="{\"name\"... JSON STRING}" locations="JSON STRING">
而不是 JSON STRINGs 我想在对象内部获取对象,因为它是原始的。
红宝石:1.9.3
谢谢