2014-11-28 4 views
0

Ia m получает ошибку какао 3840, когда пытаюсь сериализовать ответ JSON, и я получаю следующее сообщение об ошибке в консоли «Текст JSON не начинался с массива или объекта, а опция разрешить фрагменты не установлены ". Но мне довелось проверить ответ в клиенте chrome, и я получил правильный ответ. И когда я копирую ответ в JSONValidator, я получил его как действительный JSON. Но в моем приложении iOS я как-то не могу получить ответ.решение для ошибки какао 3840 NSJSONSerialization

Есть ли способ исправить это из кода iOS? Я пробовал все возможные решения из Интернета.

NSError *error = nil; 
NSMutableArray *jsons = [NSJSONSerialization JSONObjectWithData:theResponseData options:NSJSONReadingAllowFragments error:&error]; 
NSLog(@"connectionDidFinishLoading %@", jsons); 

Я попытался MutableContainers, MutableLeaves и KNIL в вариантах сериализации. Тем не менее я не могу получить данные.

ответ

0

Попробуйте - надеюсь, что он будет работать

if ([operation isKindOfClass:[AFJSONRequestOperation class]] && [operation respondsToSelector:@selector(setJSONReadingOptions:)]) 
{  
    ((AFJSONRequestOperation *)operation).JSONReadingOptions = NSJSONReadingAllowFragments; 
} 

[httpClient enqueueHTTPRequestOperation:operation]; 

Если он не работает, то

[{"Firstname":"Johnny"}], 

Это единственное содержание образец веб-ответ должен содержать.

+0

Нужно ли импортировать любую фреймворк для AFJSONRequestOperation? что такое операция? А что такое httpClient? –

+0

Добавить фреймворк AFNetworking –

+0

Он по-прежнему дал мне такую ​​же ошибку. –