问题标签 [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 投票
3 回答
3952 浏览

restkit - 如何不映射 RestKit 响应?

我使用 RestKit 与 REST api 交互。对于某些操作,例如 HTTP PUT/POST/DELETE,我只关心响应状态代码(200 或 500 等),而不关心响应数据,即使 API 确实发回了数据。

出于性能考虑,有没有办法配置 RestKit 以避免映射响应?似乎如果我没有设置响应描述符,我会收到错误“没有响应描述符与加载的响应匹配”

0 投票
1 回答
272 浏览

ruby-on-rails - 将图像从 RestKit 上传到 RoR 后端时出现 406

我遇到了一个严重的问题,并且搜索了好几个小时而没有找到解决方案。

我有一个使用 Ruby of Rails 和回形针来保存图像的后端服务器。

图片上传从浏览器正常工作,发布到 /pictures

但是当我尝试使用带有 RestKit (iOS) 的多部分请求将其上传到 /pictures.json 时,我得到了 406。

当图像(图片对象)在服务器端创建时,奖励(奖励对象)与之相关联。这个奖励对象是我期望的 JSON 响应。

这是Objective-C代码:

这是控制器:

CSRF 检查被禁用。

当使用 Wireshark 比较来自浏览器和 iOS 的请求时,它们非常相似。

在此先感谢您的帮助。

0 投票
1 回答
667 浏览

iphone - Restkit 0.20 对象在获取 json 响应后未映射

我正在使用 RestKit 0.20。我正在尝试从本地 rails 应用程序下载 json 响应并将其保存到 core-data。我尝试关注https://github.com/RestKit/RKGist/blob/master/TUTORIAL.md,一切正常。
我想多次使用它,所以我将它设为基类(ListController)并将其子类化为 SessionListController 和 EventListController。映射在 AppDelegate.m 中提供。

该应用程序具有第一个视图控制器,它是始终映射响应的根控制器,并且一切正常。但是一旦我更改视图控制器,我就会得到响应并且操作停止。它甚至没有说映射是否已经开始。我不确定我错过了什么。

在这里我正在初始化restkit

AppDelegate.m

我根据基类为 RKManager 调用 getObjectsAtPath 的基类。

列表控制器.m

这是我设置模型名称的基类之一

事件视图控制器.m

会话视图控制器.m

完整代码在https://github.com/leohemanth/event-app

使用后

我可以看到,我得到了正确的 Http 响应,但它没有被映射。我不确定为什么?

0 投票
1 回答
1725 浏览

ios - RestKit 0.20 后数组 Json 问题

这是我需要发布到服务的 json。

响应数据在警报中只有一个字段“id”:

然后我定义了两个对象: DeviceAlarm 对象:

报警对象:

这是我要发布的代码。

然后我检查了服务中的post数据,我发现restkit post一个错误数组json。警报字典丢失。

请帮帮我~:)

0 投票
2 回答
631 浏览

iphone - 如何从从json获得的url加载图像到collectionview

我有一个 IOS 应用程序,它使用 RestKit 将 json 格式的数据从服务器拉到 CoreData 实体中。数据中的属性之一是与特定文章关联的图像的 URL。我正在尝试将该图像加载到我的 collectionViewController 中。这是我一直在尝试但没有成功的方法。

从内部

我正在尝试这个

如果我注释掉抓取和加载图像的尝试,则视图会很好地加载默认图像和从 json 数据接收到的文章标题。基于此,我知道一切正常。

我还确定*photoData正在分配正确的 URL。但是每次遇到该NSData行时,控制台都会打印出“ -[__NSCFString isFileURL]: unrecognized selector sent to instance....

老实说,我不知道这是否是正确的方法,或者它是否会起作用。我对此很陌生,所以任何帮助都会很棒。鉴于我是新手,一些小代码示例确实会有所帮助,并解释解决此问题的正确方法。

以防万一这是我定义的头文件*cellimg*title

0 投票
0 回答
247 浏览

core-data - Restkit 在后续提取中获取空结果

我面临一个非常奇怪的问题,我希望有人能帮助我。

我正在使用带有 CoreData 设置的 Restkit (0.20),并且我拥有 responseDescriptor 的所有属性/关系映射设置。这是正确设置的,因为当我第一次调用 getObjectsAtPath:parameters 时,我得到了正确的结果并且它能够映射到正确的对象。

但是,在随后的 getObjectsAtPath 调用中,mappingResult 由于某种原因会产生空结果,即使我可以看到来自服务器的请求很好,并且相同的结果 JSON 被发送回客户端。

有没有人看到这个问题??!?!!?

这是映射代码:

以下是每个请求返回的 JSON 有效负载:

这是获取代码:

这是 restkit 调试输出,它显示对象在第一次 fetch 时被缓存(因为它取回数据是有意义的),而第二次 fetch 没有产生任何结果,因此没有缓存(即使调用被触发到服务器):

就像我之前提到的,第一次调用我的 fetchResultsFromServerAsync 方法时,[mappingResult 数组] 返回 ChallengeActivity 的 NSManagedObject。但是,在随后的调用中,数组是空的。

0 投票
2 回答
788 浏览

objective-c - RestKit - 自动实体映射

我正在尝试使用 RestKit 执行任何给定实体类名称的自动映射,而无需手动定义字段。

Product例如,想象一个使用字段调用的托管对象: id, name, type。此实体位于默认商店中。

我需要从此 URL 获取产品列表http://machin.net/products

问题1 defaultStore不满足要求的商店,我什至不知道如何指定它。

问题 2如您所见,我使用了所有字段,并且它们在源和目标上都是相同的,我没有找到任何方法告诉 RestKit 只需使用给定类的所有字段。

0 投票
1 回答
1138 浏览

objective-c - RestKit - 不符合键值编码

我有一个托管对象MyEntity,我在整个应用程序中都可以毫无问题地使用它。

我有一个http://my_server/MyEntity返回我的网络服务:

我正在尝试映射并获取此列表

它给了我这个错误

我restkit.network:RKHTTPRequestOperation.m:185 GET (200 OK)CoreData:错误: 由于未捕获的异常'NSUnknownKeyException','http://my_server/MyEntity'无法在NSManagedObject类'MyEntity'上调用指定的初始化程序终止应用程序,原因: '[valueForUndefinedKey:]:实体(null) 与键“link_label”的键值编码不兼容。

我在 2 或 3 个 SO 问题上看到了这个错误,但每个问题都有不同的问题,而且似乎不是我的问题。

有人可以帮我调试吗?

0 投票
2 回答
906 浏览

ios - 如何在 restkit-0.2 中为相同的 pathPattern 添加不同的响应映射?

可以为相同的 pathPattern 添加几个响应映射吗?

我有下一个情况:

所以两个映射都通过相同的路径模式发送:@“program/restdays”但是对于第一个 GET 请求服务器端返回 json:

对于第二个 PUT 请求,json:

我必须如何配置我的 restkit 映射?谢谢你。

编辑:升级 restkit 库并发现了很棒的功能,方法被贬低了:

并添加了新的:

所以现在我可以为不同的请求方法设置不同的映射。感谢大家的帮助。

0 投票
2 回答
704 浏览

objective-c - RestKit - 无法映射实体

我正在尝试映射一个Product使用 Web 服务调用的 CoreData 实体。

你会猜到MContextManager是我的上下文管理器,我用它来处理我对 CoreData 的所有查询。

我试图映射这个简单的实体已经有几个小时了,我得到的错误如下:

无法创建托管对象上下文:持久存储协调器没有任何持久存储。这可能意味着您忘记添加持久存储,或者您尝试这样做失败并出现错误。

我虽然在第一行设置了持久存储,不是吗?

更新

我已经为持久存储添加了这个:

仍然有同样的错误