我需要在WebView
中通过POST发送大量数据(图像文件),因此我将NSMutableURLRequest
与setHTTPBody:
一起使用。
问题:如果数据大小超过3MB,应用程序会突然开始占用大量内存,并且所有分页都会变慢。
我试过改变这个:
[request setHTTPBody:[NSData dataWithBytes:post.Get() length:post.Size()]];
..对此:
[request setHTTPBodyStream:[NSInputStream inputStreamWithData:
[NSData dataWithBytes:post.Get() length:post.Size()]]];
..但似乎没有任何事情发生,请求只是超时。我没有得到任何正常的回调(如WebViewProgressEstimateChangedNotification
),数据似乎没有设置。
那么,我如何(a)使NSData
方法不是内存耗费或(b)使流方法工作(假设它是一个很好的解决方法)?
答案 0 :(得分:0)
我最终使用NSURLConnection
手动上传,然后将结果输入WebView
来解决问题。作为奖励,我可以通过这种方式更好地上传进度更新。