Существует ли ограничение данных при использовании NSJSONSerialization в iOS?

Извините, что беспокою вас, но я не нашел ни одной полезной темы, которая бы мне помогала.

Я использую NSMutableRequest через NSURLConnection, чтобы получить мои данные JSON. Как только данные получены, я сериализую их, используя [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error],

Он прекрасно работает при получении меньших файлов JSON, но не работает, когда я получаю большие файлы JSON. Я пишу журнал NSLog(@"--->: %@", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]); и вывод не одна, а две записи журнала, начиная с --->:, Первый вывод содержит первую часть JSON, а остальная часть JSON лежит во второй.

Эта ошибка не позволяет создавать NSDictionary при необходимости. Каждый "больший" полученный JSON делится где-то между 7500 - 8000 символов. Мой вопрос: есть ли предел, который может обработать NSJSONSerialization? С моей точки зрения кажется, что он может обрабатывать 8 килобайт данных, и это все. Есть ли способ обойти это?

Спасибо за ваши идеи.

1 ответ

Решение

Спасибо, ребята, за ваши ответы. Я наконец нашел решение для моей проблемы. Проблема была в плохом сохранении данных в методе didReceiveData. После применения [receivedData appendData:data]; все начинает работать хорошо. Проблема 8 КБ, вероятно, состоит в том, что данные отправляются за один раз.

Другие вопросы по тегам