NSMutableURLRequest:发布大量数据

时间:2010-06-24 00:12:50

标签: cocoa webview nsmutableurlrequest

我需要在WebView中通过POST发送大量数据(图像文件),因此我将NSMutableURLRequestsetHTTPBody:一起使用。

问题:如果数据大小超过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)使流方法工作(假设它是一个很好的解决方法)?

1 个答案:

答案 0 :(得分:0)

我最终使用NSURLConnection手动上传,然后将结果输入WebView来解决问题。作为奖励,我可以通过这种方式更好地上传进度更新。