【问题标题】:What's the difference between 'multipart/related' and 'multipart/form-data' and when should I use each?“multipart/related”和“multipart/form-data”有什么区别,我应该什么时候使用它们?
【发布时间】:2016-10-10 14:17:39
【问题描述】:

我能够找到很多关于 multipart/form-data 的信息,但关于 multipart/related 的信息不多。在协议/请求格式方面,有人可以解释一下这两种http规范在文件上传方面的区别吗?

【问题讨论】:

    标签: http file-upload upload protocols


    【解决方案1】:

    multipart/form-data 用于通过单个 POST 请求上传 MIME 兼容表示的文件,例如图片和视频文件,以及相关元数据。当您在线填写附有图片的表格,然后按“提交”按钮时,就会发生这种情况。

    multipart/related 用于复合文档,您需要组合单独的正文部分以提供消息的完整含义。一个用例是提交一些 Base64 编码的图像以及相关的元数据。

    一个 POST 请求示例是 (https://cloud.google.com/storage/docs/json_api/v1/how-tos/multipart-upload):

    POST https://www.googleapis.com/upload/storage/v1/b/myBucket/o?uploadType=multipart HTTP/1.1
    Authorization: Bearer [YOUR_AUTH_TOKEN]
    Content-Type: multipart/related; boundary=foo_bar_baz
    Content-Length: [NUMBER_OF_BYTES_IN_ENTIRE_REQUEST_BODY]
    
    --foo_bar_baz
    Content-Type: application/json; charset=UTF-8
    
    {
      "name": "myObject"
    }
    
    --foo_bar_baz
    Content-Type: image/jpeg
    
    [JPEG_DATA]
    --foo_bar_baz--
    

    您可以在https://msdn.microsoft.com/en-us/library/ms527355(v=exchg.10).aspx找到更多详细信息

    【讨论】:

      猜你喜欢
      • 2010-09-05
      • 1970-01-01
      • 2018-04-16
      • 1970-01-01
      • 2013-04-17
      • 2016-11-21
      • 2022-06-25
      • 2021-08-10
      • 2018-04-07
      相关资源
      最近更新 更多