Я использую Afnetworking 3.1.0 для приложения iOS. В моем ответе JSON есть знак «_» (подчеркивание), как показано ниже.
response --> {"_body":{"data":{"
Приложение Android может сериализовать один и тот же ответ без каких-либо проблем, в котором используется okhhtp3.
Подозреваю, виноват AFJSONResponseSerializer. Я попытался, как показано ниже, установить acceptContentType на AFJSONResponseSerializer. Но не работает.
self.requestSerializer = [AFJSONRequestSerializer serializerWithWritingOptions:NSJSONWritingPrettyPrinted];
self.responseSerializer = [AFJSONResponseSerializer serializer];
self.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil];
Кто-нибудь знает, как решить эту проблему, поделитесь, пожалуйста.





Обнаружил, что проблема не в AFNetworking. Проблема заключается в методе enumerateKeysAndObjectsUsingBlock, который я использую для создания настраиваемого JSON из ответа.
enumerateKeysAndObjectsUsingBlock игнорирует объект внутри объекта.
Он использует
NSJSONSerialization. См. Там: github.com/AFNetworking/AFNetworking/blob/… Я предполагаю, что проблема связана сNSJSONSerialization, можете ли вы проверить это, выполнив тест сNSJSONSerialization, и посмотреть, проанализирует ли он его?