问题标签 [restkit-0.20]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
846 浏览

iphone - getting JSON data without object mapping using RestKit 0.2

I'm trying to call a RESTful web service with RESTKit 0.2 that returns only a string, but the RKResponseDescriptor class forces me to use a mapping with its method responseDescriptorWithMapping in order to be able to get the string value, I created the mapping and got the string value without any problems, but how can i get this string value without having to create the object mapping (i.e. creating an NSObject subclass, creating a property for the string to be received, and creating a mapping dictionary between the returned JSON key and this property) ?

0 投票
2 回答
2117 浏览

ios - RestKit - 没有对象映射的请求

我正在将 RestKit 与我的项目集成。我正在使用版本RestKit-0.20.2。在这个版本中,我们有什么方法可以在没有对象映射的情况下完成请求?我想做与海报在这里所做的相同的事情:Parsing JSON without Object Mapping in Restkit iOS。但它似乎是一个旧版本,并且 RKClient 在 0.20.2 中不可用。

是否可以使用 RestKit-0.20.2 在没有对象映射的情况下进行请求?

PS:我在谷歌搜索,我无法找到/识别我的问题的正确答案,因为我是 RestKit 的新手。

谢谢大家!

0 投票
2 回答
489 浏览

ios - iOS、RESTKit 和 oAuth - 简单示例不起作用

我正在 iOS 上编写一个简单的应用程序,并且我正在尝试使用 RESTFull Web 服务为了获得一些技巧并获得一些知识,我首先从 twitter 开始,而不使用 ios 集成库,但我总是在 Auth 上备货。

任何工作示例或链接将不胜感激,因为提醒 twitter 不是我的最终目标

例如,这是我的代码之一,基于 RestKit 和 AFOAuth1Client :

如您所见,它不起作用:

0 投票
1 回答
509 浏览

ios - RKConnectionDescription 有时仅适用于 Restkit 0.20.1

我正在尝试使用共享管理器在一个 GET 请求期间使用 RestKit 更新多个模型,例如:

whereresponseDescriptor有一个映射、关键路径和路径模式。

获取的 JSON 包含五个独立的模型,当从一个空应用程序开始时,它的大小可能很大,比如总共 300 个对象(不同类型)。这是一个显示一般结构的编辑示例。事情看起来像那样,但应用程序中还有更多。

在我尝试使用的一个映射RKConnectonDescription中,CoreData 知道它们是基于外键相关的。例如:

所有 CoreData 对象都使用 remoteId 属性作为通过 json 提供的 id 的标识属性。例如,会话映射如下所示:

房间映射如下所示:

我发现,当我从一个空数据库开始并获取所有对象时,只有一些会话有房间。Session 模型确实有一个roomRemoteId字段,房间确实有一个remoteId. 我抽查了其中一个没有房间的会话,它确实有一组,我可以在数据库中roomRemoteId查找一个带有该房间的房间。remoteId

我估计大约 25% 的会话看起来不错,但其他 75% 有roomRemoteId但没有设置房间关系。

所以问题是,为什么有些会话映射正确而其他会话不正确?

0 投票
2 回答
201 浏览

restkit - 非托管对象中的 RESTKit 托管对象作为关系

我有一个简单的对象映射,并且作为关系,我添加了两个托管对象映射。我收到以下错误: CoreData: error: Failed to call designated initializer on NSManagedObject class 'Error'

在不添加关系的情况下,该设置适用于 RestKit。我还在网站上找到了有关此错误消息的其他一些主题,但路线是正确的并且persistencoordinator存在,所以我没有其他线索为什么它不起作用。


编辑:
这是我的映射:

现在打电话:

0 投票
0 回答
1034 浏览

ios - RestKit 发布失败的 URL 密钥

我正在开发一个使用 RestKit 的 iPhone 应用程序。我在将对象发布到服务器时遇到问题。当我保存帖子时,它会显示在 TableView 提要中,但不会保存到服务器。我在 xcode 中收到一条错误消息:

在控制台的更下方,我得到:

我的 NSManagedObject MPost 看起来像

@interface MPost : NSManagedObject

这是我的 AppDelegate

NewPost 类中的 savePost 方法是这样的:

有任何想法吗?

是否因为我的 rails 应用程序模型中有 user_id presenece:true parmam 而失败 - 但我的 xcode 应用程序中没有用户?还是 xcode 和 rails 中的类声明之间存在差异?

编辑这是来自成功帖子的服务器日志

这是发布失败后的服务器日志中的:

问题出在轨道方面吗?在posts_controller 中?

0 投票
3 回答
6359 浏览

ios - RestKit:映射 JSON 字符串数组

给定以下 JSON:

我用 and 将这个 JSON 映射到sNSManagedObject中(在这个例子中,我将有 2 个实体映射:一个用于顶级对象,另一个用于我的要素类)。RKMapperOperationRKEntityMapping

顶级对象映射是微不足道的:两个属性映射加上一个关系一个(特征),用于与 Feature 的关系。

我的问题是,如何将要素 JSON 数组映射到要素对象数组中?Feature 类只有一个属性name,我想在其中存储“feature1”、“feature2”等以及对父对象(顶层对象)的引用。像这样的东西:

任何想法?

0 投票
1 回答
102 浏览

iphone - 设计一个使用 2 个 Restful Web 服务的应用程序

使用RestKit0.2x,我想构建一个 iPhone 应用程序,它将使用 2 个不同的 RESTful Web 服务(两个不同的基本 URL):

  • Web 服务 A将使用 Core Data 在持久化存储中持久化大约 6000 个对象。
  • Web 服务 B不会使用核心数据,它只会映射到常规NSObject子类,并且它还会检索大量对象(约 1000 个对象)。

我决定为应用程序做以下设计:

- 在应用程序委托中:

1)定义两个不同RKObjectManagers的,每个都有自己的基本 URL。

2) 为每个管理器设置必要的对象/实体映射,以及请求描述符。

RestKit3) 使用' 的方式定义持久存储的东西。

- 在视图控制器中:

4)在后台线程(例如dispatch_async)内的所需视图控制器中调用(对于Web服务A)的方法getObjectsAtPath,我假设使用后台线程,因为Web服务有数千个要检索的对象,然后使用在 .上显示此数据。RKObjectManagerNSFetchedResultsControllerUITableView

getObjectsAtPath5)在所需视图控制器的后台线程中调用方法 (用于 Web 服务 B),并将此数据直接显示在UITableView.

我的问题:我上面的设计是正确的还是缺少重要的步骤?如果有任何遗漏的东西,请您提及它们吗?

ps 没有POST涉及 Web 服务的方法,只有GET,并且响应是JSON格式的。

0 投票
1 回答
230 浏览

ios - 如何在 RestKit 中定义不在同一个 JSON 文档中的实体之间的关系映射?

使用 RestKit 0.20.2

示例:我设置了 2 个核心数据实体“专辑”和“歌曲”以及关系来定义一张专辑有几首歌曲,而一首歌曲属于一个专辑。

我进行了实体映射,并且可以成功显示专辑列表。

我打电话 :

/albums获取专辑

/albums/:albumId/songs获取指定的专辑的歌曲albumId

我从来没有一个 JSON 文档同时保存一张专辑及其歌曲。(github 上提供的所有 RestKit 示例都假设您处理将所有实体放在一起的单个 JSON 文档)

如何设置两个实体之间的关系以使 RestKit 在我的 Core Data 对象存储中正确写入?

0 投票
1 回答
375 浏览

core-data - RestKit 两个连续的 enqueueBatchOfObjectRequestOperations 没有直接映射到核心数据

我将 RestKit 0.20.2 与 MagicalRecord 结合使用(对于您能想到的任何最终上下文问题都很重要)。

我的应用程序是一个带有项目(实体)的储蓄票(实体),每个项目都有一个税(实体)。我的用例是这样的:当 ipad 在很长一段时间无法发送数据(无论出于何种原因)后重新连接到互联网时,我需要将核心数据与我的网络服务器同步

我的问题是能够同步很多对象(它可以从 100 到 1000 甚至更多),能够在没有超时的情况下发布很多对象我设置了 restkit 并发:

现在这工作得很好。但我的问题是我有很多与每个项目同步的冗余实体。例如,每个项目都有税,但我的模型中只有两个税需要与 Web 服务同步,然后作为与项目的关系发送(我只输入税的 ID)。因此,为了规避每个 postItem 的问题,我检查相关的税是否有 ID,如果是,那么我可以直接解析项目与其中的税关系,如果没有,我需要先同步税,然后将项目与返回的税号。

周围的工作也按预期工作。但是又出现了一个问题,因为在每个 postItem 之间,RestKit 不会在两个请求之间保存新的 TaxID,所以它不是发送一次,而是每次在一个项目中遇到它时发送它,并且当所有操作完成后它会保存新创建的 taxID

为了改善这一点,我在restkit中挖掘了一下,发现

所以现在我正在为我的税务实体构建 RKManagedObjectRequestOperations 并对其进行批处理。然后我同步项目。它更高效,而且我不需要在操作之间设置依赖关系(因为我需要它们以特定顺序执行,然后对项目征税,然后是整张票。)

问题在两个 enqueueBatchOperations 之间,RestKit 不会立即映射第一批的结果,即使我明确调用

它没有被映射,因为在第一批税之后,我发送了所有项目,我可以看到 taxID 没有设置,但是在所有批次完成后,我可以清楚地看到它们在我的核心数据中正确映射文件。所以我认为这是一个上下文问题,但是当我深入研究 RestKit 时,更具体地说

我可以看到第 580 行:

这为操作设置了 mainQueueContext (而不是对象上下文)(我已经用断点检查过),所以调用 save 或 saveToPersistentStore 应该将更改从子上下文传播到 mainQueue 并且......这是我失去希望和转向stackoverflow;)