在iOS中使用NSJSONSerialization时是否存在数据限制?

时间:2013-03-07 13:53:51

标签: ios json limit nsjsonserialization

很抱歉打扰你,但我找不到任何有用的主题可以帮助我。

我通过NSURLConnection使用NSMutableRequest来获取我的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 个答案:

答案 0 :(得分:0)

谢谢你们的回答。我终于找到了解决问题的方法。问题在于在didReceiveData方法中严重保存数据。应用[receivedData appendData:data];后,一切都开始运作良好。 8 kB问题可能是一次发送的一大块数据。