gpt4 book ai didi

ios - RestKit的动态映射能解决这个复杂的JSON映射吗?

转载 作者:行者123 更新时间:2023-11-29 03:35:54 26 4
gpt4 key购买 nike

我在我的应用程序中使用 RestKit,它需要使用现有的同步服务来以这种方式构建传入数据:

{
"timestamp": 000000000001,
"status" : 0,
"syncData":[
{
"errors":[],
"rows":[ {"name":"AAA", ...},
{"name":"BBB", ...},
...],
"rtype":"FOO" },
{
"errors":[],
"rows":[ {"id":1, "description":"ZZZ", ....},
{"id":2, "description":"YYY", ....},
...],
"rtype":"BAR"
}, ...

我是 RestKit 新手,试图找出解决此问题的最佳方法,以及将相同结构的数据发送回服务器的补充问题。我将 Core Data 与 RestKit 结合使用。

我已经映射了一个 SyncResponse 实体来保存顶级数据,我想从中得到的是 FOO 对象、“AAA”、“BBB”等的集合,以及 BAR 对象的集合、“ZZZ”、“YYY”等,以及几十个其他对象集合,其类由“rtype”字段指示。

我已经阅读了有关动态映射的文档部分以及一些示例代码和帖子,但我不知道动态映射在这种情况下是如何工作的,因为它不是 {"a":{is A}, "b":{是 B}} 格式。使用动态映射是否可以实现这一点?如果可以,我在这里缺少什么概念?

假设这是可能的,我如何从 FOO 和 BAR 的集合开始发回数据,当然用 SyncUpdateRequest 包装器之类的东西替换 SyncResponse?

最佳答案

我认为您无法仅使用一组映射来完成此操作。

您的最佳选择可能是为每一项创建映射,并为整体结构创建映射。整个映射只是将数组提取为字典的 NSArray 。获得数组后,您可以自己对其进行迭代,检查类型,然后应用 RKMapperOperation 来执行映射。


对于发送您的更新请求,我将其视为一个完全独立的事情。我将构建一个字典数组,其中字典具有用于某些信息的“简单”键/值对和用于行的“复杂”键/值对。然后,您的请求映射是根据这个字典数组(涵盖自定义部分)和行(这应该是该类的响应映射的逆)。那么 RestKit 应该能够以标准方式处理它(与上面响应映射的复杂性相比)。

关于ios - RestKit的动态映射能解决这个复杂的JSON映射吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19189587/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com