2

我正在将 JSONKit 与 AFNetworking 的 AFHTTPClient(带有 AFJSONRequestOperation)一起使用,我似乎无法弄清楚如何触发使用 JSONKit 的 mutableObjectFrom... 方法,而不是返回(或数组)JKDictionary 的普通解析器方法.

在不修改 AFNetworking 的情况下这可能吗?

4

3 回答 3

15

在最新版本的 AFNetworking 中,您无需修改​​代码即可实现此目的。创建 AFJSONRequestOperation *操作后 & 在调用 [操作开始] 之前,添加

[operation setJSONReadingOptions:NSJSONReadingMutableContainers];

然后,您可以遍历 JSON 并修改底层 NSMutableDictionaries

于 2013-04-10T20:36:45.430 回答
2

如果不编辑 AFNetworking 代码,您将无法做到这一点。

在 AFJSONUtilities.m 中更改(第 103 行)

SEL _JSONKitSelector = NSSelectorFromString(@"objectFromJSONDataWithParseOptions:error:"); 

经过

SEL _JSONKitSelector = NSSelectorFromString(@"mutableObjectFromJSONDataWithParseOptions:error:"); 
于 2012-02-27T13:26:16.817 回答
-1

对于 AFNetworking 的基于 NSJSONSerialization 的操作,在 AFJSONUtilities.m 第 203 行中,更改:

NSUInteger readOptions = 0

NSUInteger readOptions =  NSJSONReadingMutableContainers 
于 2012-09-13T14:58:36.797 回答