当前位置: 首页 > 知识库问答 >
问题:

多部分表单上传与NSurlSession.UploadTaskWithRequest之间的区别

车思淼
2023-03-14

我来自web编程领域,对于处理多部分表单请求来上传文件,我非常满意。但是,在iOS中,我们有一个名为NSurlSession的东西,它的方法是UploadTaskWithRequest,它似乎是用来执行图像上传之类操作的方法。

您能解释这两种方法之间的区别吗?多部分表单上传与UploadTaskWithRequest?如果我已经有一个处理多部分表单上传的后端,我可能需要什么样的调整,以便它也支持UploadTaskWithRequest

共有1个答案

楚天宇
2023-03-14

UploadTaskWithRequest只是将NSDATA、文件或流作为请求的主体发送。除此之外,它什么也做不到。它的好处是可以与后台会话一起使用。

因此,如果您有web服务需要multipart/form-data请求,那么您必须自己构建该请求(除非您使用AFNetworking或Alamofire这样的工具来完成此操作)。构建完请求后,可以使用DataTaskWithRequest(已经设置了NSMUTableURLRequestHttpBody)或UploadTaskWithRequest(在这种情况下,不设置HttpBody,而是将其作为参数提供给UploadTaskWithRequest)。

顺便说一句,像Charles这样的工具在这些情况下非常有用,可以让您观察幕后发生的事情。

 类似资料:
  • 位卡在这个上,需要上传图像和json一起使用多部分形式...不知道如何发送内容类型标头或上传图像...认为我需要转换为blob...目前我只是发送我从文件输入字段中获得的数据。 任何建议都很好谢谢

  • http://letitripple.org/htmlform.html 这是此html表单创建的请求。(我从chrome开发者工具中获得) ------WebKitFormBoundaryPug6XAUALAUPBR86内容-配置:表单-数据;name=“wp-user-avatars”;filename=“desert.jpg”内容-类型:image/jpeg

  • 有人知道如何在中使用吗。Net 4.5与上传? 我在网上找不到任何例子。

  • 我正在尝试在 Java 应用程序中设置一个 Apache Camel 路由,其中使用者终结点是一个 restlet 组件,它将 HTTP 文件上传作为多部分表单数据的 POST 进行处理,然后创建者终结点将请求转发到也接受多部分表单数据的 rest 服务。我是骆驼的新手,不知道如何正确地连接它。以下是到目前为止我的路线。我是否需要对正文进行任何转换,还是会按原样转发多部分表单数据?有人可以为我提供

  • 我试图用python写的lambda (aws)完成多部分上传。下面是我正在使用的代码。大约有120个部件,总大小为30GB。下面的操作似乎没有在5分钟内完成,因此lambda关闭,上传似乎没有完成。S3提供异步多部分上传功能吗?我相信这将确保文件得到合并,不管lambda关闭。

  • 我有一个windows服务,正在上传一个多部分数据表单在C#。它上传了一个csv,其中包含身份验证变量,形式如下:一个密钥、一个上下文和一个UUID。变量是在自定义标记类中设置的。每次我尝试上传,我得到一个403错误。 在我的开发过程中,我创建了自己的S3 bucket,并添加了能够成功上传文件的NuGet AWS S3类。现在我上传到第三方桶,我不断得到一个403错误。谢了!