Ios NSURLSessionUploadTask后台会话-带一些参数的文件上载

Ios NSURLSessionUploadTask后台会话-带一些参数的文件上载,ios,swift,upload,nsurlsession,nsurlsessionuploadtask,Ios,Swift,Upload,Nsurlsession,Nsurlsessionuploadtask,服务器端是一个PHPWeb服务,它接受post参数userid、authenticationKey、一些标题、一些注释和一个文件 我正在iPhone上录制音频并上传到此服务。如果我使用NSURLSessionUploadTask并使用DefaultSessionConfiguration构造一个由多个部分组成的文件上载请求,那么代码可以正常工作 但是,我想使用后台会话配置上传文件 在post请求中,我找不到任何后台文件上传的示例代码以及一些参数。我正在使用Swift和iOS 8 谢谢你的帮助 谢

服务器端是一个PHPWeb服务,它接受post参数userid、authenticationKey、一些标题、一些注释和一个文件

我正在iPhone上录制音频并上传到此服务。如果我使用NSURLSessionUploadTask并使用DefaultSessionConfiguration构造一个由多个部分组成的文件上载请求,那么代码可以正常工作

但是,我想使用后台会话配置上传文件

在post请求中,我找不到任何后台文件上传的示例代码以及一些参数。我正在使用Swift和iOS 8

谢谢你的帮助

谢谢。
Sara

您可以将数据写入磁盘上的文件,并将上载正文作为文件URL提供,或者IIRC您可以创建NSURLRequest对象,将bodyData属性设置为NSData blob,并使用NSURLDownload请求。我不能100%确定后一种方法是否有效,尽管您可能必须以身体流的形式提供身体,这在背后是一种痛苦。

我已经成功地在后台上传了一个包含额外表单数据参数的文件。这是通过手动创建全文请求并将该字节块保存为文件来完成的

然后,我可以启动一个上传任务,即使应用程序进入后台,也可以上传该文件

上传后,我将删除该文件。

回答如下: