cocoa - NSMutableURLRequest:发布大量数据

标签 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) 让流方法发挥作用(假设这是一个很好的解决方法)?

最佳答案

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

关于cocoa - NSMutableURLRequest:发布大量数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3106444/

相关文章:

objective-c - NSTextField 委托(delegate)通知——如何获取文本?

objective-c - 将其他正在运行的应用程序的窗口置于最前面

android - 尝试在空对象上调用接口(interface)方法 'android.media.session.ISessionController android.media.session.ISession.getController()'

android - 如何在android native中每2秒检查一次webview的http url连接

ios - Xamarin:NSMutableUrlRequest 和 NSUrlRequest 与 POST 方法和标题和数据?

iphone - 无法从 iPhone 连接基于 soap 的 wcf 服务

swift - macOS 上的 AVAudioInputNode 仅输出静音

Android Webview 重定向循环

iphone - setHttpMethod 奇怪的行为

objective-c - NSTableView 圆角像 UITableView Groups