http的body格式

body数据都通常放在 HTTP 请求的 body 部分。
在 HTTP 请求中,Content-Type 头用于指示 body 中的数据格式。例如,对于 x-www-form-urlencoded 格式的数据,通常会设置 Content-Type: application/x-www-form-urlencoded,而对于 form-data 格式的数据,通常会设置 Content-Type: multipart/form-data。

Content-Type: application/x-www-form-urlencoded

这种格式将数据编码成键值对的形式,然后将键值对连接成一个字符串,并使用 & 符号作为分隔符。键和值都进行了 URL 编码。

POST /submit-form HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 45

name=John+Doe&age=30&city=New+York

Content-Type:application/json

这种格式常用于上传文件或者包含二进制数据的场景。它将每个字段和对应的值以及文件数据分别作为一个独立的部分,每个部分都有自己的 Content-Disposition 标头。
设置 Content-Type: application/json 头来指示请求体中的数据是 JSON 格式的。

POST /api/data HTTP/1.1
Host: example.com
Content-Type: application/json

{
  "name": "John Doe",
  "age": 30,
  "city": "New York"
}

Content-Type:multipart/form-data

这种格式常用于上传文件或者包含二进制数据的场景。它将每个字段和对应的值以及文件数据分别作为一个独立的部分,每个部分都有自己的 Content-Disposition 标头。