我正在使用URLSession'来自文件的uploadTask'
func uploadTask(with request: URLRequest, fromFile fileURL: URL) -> URLSessionUploadTask
几乎所有东西都可以正常工作,但是现在我们的服务器需要额外的参数“ uploadKey”作为内容处置与fileName一起传递。
这可以通过生成多部分请求来完成,并添加内容处置,就像我们通常所做的那样。
我想在使用“来自文件的uploadTask”时添加它以避免内存压力。请提出建议。
答案 0 :(得分:0)
通过阅读问题,我怀疑您是在误解上载任务的作用(不幸的是,Apple的文档在这方面需要一些重大改进,这无济于事)。这些任务不会以与您选择上传表单中的文件时Web浏览器相同的方式上传文件。而是将文件用作上传请求的正文。我认为他们默认不提供基于文件名的合理的Content-Type,尽管我不确定,但他们不以表单编码发送数据。
因此,假设我已完全理解该问题,则可以选择以下两种方式之一:
无论哪种方式,服务器代码都将确定支持哪种方法。如果可以修改服务器代码,那么我建议第二种方法。它比第一种方法更有效,比JSON更有效,并且比其他任何一种方法都易于实现。