【发布时间】:2013-06-02 05:54:53
【问题描述】:
我一直在编写 iPhone 应用程序,发送数据到服务器,接收数据(通过 HTTP 协议),没有考虑太多。大多数情况下我在理论上对流程很熟悉,但我不太熟悉的部分是 HTTP 多部分请求。我知道它的基本结构,但我不知道它的核心。
似乎每当我发送不同于纯文本的内容(如照片、音乐)时,我都必须使用多部分请求。谁能简单解释一下为什么要使用它以及它的优点是什么?
如果我使用它,为什么以这种方式发送照片更好?
【问题讨论】:
我一直在编写 iPhone 应用程序,发送数据到服务器,接收数据(通过 HTTP 协议),没有考虑太多。大多数情况下我在理论上对流程很熟悉,但我不太熟悉的部分是 HTTP 多部分请求。我知道它的基本结构,但我不知道它的核心。
似乎每当我发送不同于纯文本的内容(如照片、音乐)时,我都必须使用多部分请求。谁能简单解释一下为什么要使用它以及它的优点是什么?
如果我使用它,为什么以这种方式发送照片更好?
【问题讨论】:
我找到了一个很好且相对简短的解释here。
多部分请求是一个 REST 请求,在其实体中包含多个打包的 REST 请求。
【讨论】:
正如official specification 所说,“一个或多个不同的数据集组合在一个主体中”。因此,当问题中提到的将照片和音乐作为多部分消息处理时,可能还会关联一些纯文本元数据,从而使请求包含不同类型的数据(二进制、文本),这意味着使用多部分。
【讨论】:
HTTP 多部分请求是 HTTP 客户端构造以将文件和数据发送到 HTTP 服务器的 HTTP 请求。浏览器和 HTTP 客户端通常使用它来将文件上传到服务器。
【讨论】: