POST 请求的数据提交方式

综述

前后端使用 api 来交互数据。数据被放进了消息主体中,后端通过 Content-Type 字段来获取消息主体使用了何种编码。

application/x-www-form-urlencoded

HTTP 中默认的数据提交方式
浏览器的原生form表单,在未定义编码方式时,会默认以这种方式对数据进行编码。下面是一个典型的请求:

1
2
3
4
POST http://www.example.com HTTP/1.1
Contente-Type: application/x-www-form-urlencoded;charset=utf-8

title=test&sub%5B%5D=1&sub%5B%5D=2&sub%5B%5D=3

multipart/form-data

在使用表单上传文件是,需要使用到此编码方式

[注] 以上两种编码方式是浏览器原生支持的

application/json

标注消息主体是序列化的 JSON 字符串,常用来传递复杂的数据结构
下面是一个典型的请求:

1
2
3
4
BASHPOST http://www.example.com HTTP/1.1
Content-Type: application/json;charset=utf-8

{"title":"test","sub":[1,2,3]}