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