问题标签 [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 回答
5619 浏览

objective-c - postPath AFHTTPClient 中的 JSON 响应

我刚刚切换到 RestKit 0.2,我目前正在使用新的“HttpClient”,它基本上是一个 AFHTTPClient。我有这行代码:

此 POST 调用以以下形式返回 JSON 响应:{"api_key":"....","username":"...."}。就如此容易。

在切换到 0.2 之前,我可以通过以下方式在响应中获取 api_key 键:

http://restkit.org/api/master/Classes/RKResponse.html

但是现在,我不能这样做,如果我在 responseObject 上执行 NSLog,我会得到:

<7b227265 61736f6e 223a2022 41504920 4b657920 666f756e 64222c20 22617069 5f6b6579 223a2022 61356661 65323437 66336264 35316164 39396338 63393734 36386438 34636162 36306537 65386331 222c2022 73756363 65737322 3a207472 75657d>

奇怪的是,如果我这样做:

我确实显示了 JSON(在 NSString 中)。

所以两个问题:

1)为什么打印 responseObject 显示 HEX 代码,而不是实际的 JSON 响应?

2) 为什么如果我执行 operation.responseString 会显示实际的响应对象?从 JSON 解析后,有没有办法在 ResponseObject 中获取实际数据?

0 投票
2 回答
2241 浏览

macos - Restkit:迁移到 0.20

我正在尝试迁移到 RestKit 0.20-pre2。

目前我设法迁移了我的映射(至少编译器不再抱怨),但是我在创建请求时遇到了问题(以前我使用了不再存在的 RKObjectLoader。

我之前的代码如下:

我使用上述方法创建了一个通用请求,然后同步或异步发送它。现在......我看到了新方法getObjectsAtPath: parameters: success: failure:,但是......我需要同样的POST(而且我没有任何要发布的对象......它只是接受POST登录请求的服务器......)

有什么帮助吗?

谢谢

0 投票
2 回答
6242 浏览

objective-c - RestKit 0.20 — CoreData:错误:无法调用 NSManagedObject 类上的指定初始化程序

我遇到了一个我似乎无法解决的新问题......这是我的 RestKit 代码,遵循 Twitter 核心数据示例:

我通过 UITableViewController 类从 API 请求信息:

但是,使用此代码,我收到以下错误:

您可以在此处查看返回的 JSON 对象:http: //test1.AppName.com/albums/display/102/drrrbSAt6RFLsgHaKiiB6kBIyYRyzxLYinL84Kba

0 投票
2 回答
4528 浏览

restkit - RestKit 0.20 — 创建新的 NSManagedObject 的首选方法是什么?

我很想知道在 RestKit 0.20 中创建新的 NSManagedObject 的最佳方法是什么?目前我的代码看起来像这样:

我也很想知道我的职责是保存/删除这个对象。如果我通过 RestKit POST 到服务器,托管对象上下文是否保存?

如果我决定取消这个创建过程怎么办——删除这个对象的首选方法是什么?

基本上 RestKit 为我做了多少,我应该确保我在做什么。我还没有找到太多关于这方面的文档,并且想清楚地说明这一点。

0 投票
2 回答
992 浏览

restkit - RestKit 0.20——所有导致问题的 API 调用的 POST

我正在使用一个只有 POST 调用的 API。创建、编辑和删除。这会导致 RestKit 在编辑和删除方面出现一些问题。

按预期创作作品。但是,当我对一个对象进行编辑时,它不会保存到我的设备中,直到我再次调用 GET 请求(这也可以)。我假设这是因为我没有调用 patchObject 和 deleteObject(相反我必须使用 postObject),并且在后台发生了一些 Core Data 魔术。

他们的 API 将在不久的将来更新,但是在人工时间有没有办法欺骗对象管理器以不同的方式处理我的 POST 请求?

0 投票
2 回答
3099 浏览

restkit - RestKit 0.2 — RKManagedObjectRequestOperation targetObject == null

我不知道如何在 postOperation 上设置 targetObject。现在我所有的 postObject 方法都工作正常,并将响应数据从服务器映射到我的对象。但是 managedObjectRequestOperationWithRequest 并没有这样做,并且我为 targetObject 拥有的日志返回 null。

我尝试手动设置它(请参阅下面的代码注释) - 但随后我收到一条错误消息,提示托管对象上下文不匹配(一个为空)。这是因为线程吗?无论如何围绕这个?

这是我在注释掉 postOperation.targetObject = media; 时收到的错误。

0 投票
3 回答
2163 浏览

ios - RestKit 0.2 连接到无效的 HTTPS 安全证书

在 RestKit 0.2 中,如何允许我的应用连接到具有无效 https 安全证书的服务器?从 AFNetworking 文档看来,我所要做的就是 #define _AFNETWORKING_ALLOW_INVALID_SSL_CERTIFICATES_ 。但是,我已将该命令添加到我的 pch 文件、Build Settings > Preprocessor Macros 以及我的 App Delegate 中。所有这些都不允许连接。有任何想法吗?

0 投票
3 回答
2301 浏览

ios - RestKit 响应无法反序列化为对象

在使用 RestKit 的发布请求期间,我无法将响应映射回对象。

这是代码:

要求:

通用响应.h:

日志:

从日志中,对我来说奇怪的是,RestKit 似乎期望反序列化对 LoginCriteria 对象的响应,但是当它正确获取 GenericResponse 对象时“失败”,这当然是正确的。

任何帮助是极大的赞赏!

0 投票
1 回答
6351 浏览

ios - RestKit 0.2,多种方式发出 GET、POST、PUT 请求

我对使用 restkit 的方式有点困惑,似乎有多种方法可以做同样的事情,在我满足于搞砸它直到它起作用之前,但现在他已经改变了 0.20 中的框架和用法.x,我花了很多时间来转换我的代码,现在花更多的时间试图让它像以前一样工作。而且我已经搜索了一些例子,以及人们声称为他们工作的例子,不要为我做太多,所以在某个地方一定有区别,所以也许有人可以在尝试时告诉我下面的区别至少获取此数据,例如 1 和 2(失败,但这是关于 restkit github 的问题)

1.

为了让你的播放器,像这样:

2.

像这样使用响应描述符。

3.

或者实际上是在 RestKit wiki 上拥有自己的示例

而且我相信还有很多其他方法,我怀疑是否有人可以确认您应该设置路径的方式以及您是否使用一种方法而不是另一种方法,这取决于您尝试映射的数据集及其格式. 然后,其中一些看起来也像是做同样事情的不同方式?谢谢

0 投票
1 回答
8928 浏览

ios - Restkit Post 不发送对象

我正在创建一个使用 restkit 的 IOS 应用程序,并且我能够毫无问题地执行 GET 请求,并且它正确映射并且所有内容,但是,我无法让 restkit 对数据库进行 POST。它得到的回应是:

我有一种感觉,该对象只是没有被发送。这是我在我的应用程序委托中设置所有映射的代码。

这是我的发帖请求:

}

这是我得到的日志:

任何指向正确方向的例子或观点都会令人惊叹。我已经坚持了一段时间。

如果您需要更多信息,请告诉我。

更新

我能够让它工作但不是正确的方式。基本上我只是像这样通过参数发送所有信息。

}

有人对如何正确执行此操作有任何想法吗?

Vishal 的更新 对于使用 coredata,您必须像这样创建一个托管对象存储......

然后你将不得不使用 RKEntityMapping 而不是 RKObjectMapping

希望这可以帮助。

Vishal 的更新 2