ios - NSUrlConnection - 上传文件并发送 POST 参数

标签 ios post upload nsurlconnection

我正在尝试使用与下载文件类似的策略上传一个(可能很大的)文件 -- i. e.使用流。 我将 NSMutableUrlRequest 的 HTTP 正文设置为:

[request setHTTPBody:[params dataUsingEncoding:NSUTF8StringEncoding]];

然后将其正文流设置为:

[request setHTTPBodyStream:inputStream];

但是请求的主体被设置为 nil...

最佳答案

您只能将 NSInputStream NSData 对象设置为请求主体,不能同时设置两者。

您可能试图完成的是设置多部分表单请求。使用 NSInputStream 作为 body,老实说,出于多种原因,这是一项非常具有挑战性的任务。我建议使用第三方库。

一个可以发送多部分表单请求的网络库的实现,有一个部分有一个 NSSInputStream 作为部分主体,将需要一堆帮助类,可能包含超过 5000 行代码。查看 AFNetworking,了解实现多部分请求时所需的复杂性。

关于ios - NSUrlConnection - 上传文件并发送 POST 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21309555/

相关文章:

ios - 当我在 xcode 中构建项目时,出现类似 clang 错误 :input files not found 的错误

ios - 如何避免为自己的应用内购买付费?

ios UICollectionView - 设置自动高度

ios - swift : Separate classes for network requests

html - 基于浏览器的上传到 Amazon S3?

ios - Swift 3 中的 Any 、 Hashable 、 AnyHashable 有什么区别?

Jquery .load() Post + 变量数组

javascript - 如何使用 javascript 将多个文件上传到 firebase 存储引用?

ios - 如何创建一个自动上传iOS图片的应用程序?

node.js - 有没有办法使用 node.js 从 url 上传到 S3?