首页 > 解决方案 > AFJSONResponseSerializer 不允许在响应正文中使用下划线

问题描述

我正在为 iOS 应用程序使用 Afnetworking 3.1.0。我的 JSON 响应有一个“_”(下划线),如下所示。

response --> {"_body":{"data":{"

Android 应用程序可以毫无问题地序列化相同的响应,这是使用 okhhtp3。

我怀疑,AFJSONResponseSerializer是罪魁祸首。我已经尝试如下将 AcceptableContentType 设置为AFJSONResponseSerializer. 但不起作用。

self.requestSerializer = [AFJSONRequestSerializer serializerWithWritingOptions:NSJSONWritingPrettyPrinted];
    self.responseSerializer = [AFJSONResponseSerializer serializer];
    self.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil];

任何人都知道如何解决这个问题,请分享。

标签: iosobjective-cjsonafnetworking

解决方案


发现问题不在 AFNetworking 中。问题出在enumerateKeysAndObjectsUsingBlock我用来从响应构造自定义 JSON 的方法中。

enumerateKeysAndObjectsUsingBlock 忽略对象内部的对象。


推荐阅读