form-data:
用于发送键值对数据,特别适合发送文件和二进制数据。
数据以multipart/form-data编码,可以包含文本字段和文件。
每个字段都可以有一个键(key)和一个值(value),文件字段还包含文件名和文件类型。
Fiddle 抓包
POST http://192.168.99.126:8080/jwt/register/mobile HTTP/1.1
User-Agent: PostmanRuntime/7.44.1
Accept: */*
Cache-Control: no-cache
Postman-Token: d8493322-e015-47d6-a659-7901248cb943
Host: 192.168.99.126:8080
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Type: multipart/form-data; boundary=--------------------------174315357574324233095537
Content-Length: 400
----------------------------174315357574324233095537
Content-Disposition: form-data; name="mobile"
13659806888
----------------------------174315357574324233095537
Content-Disposition: form-data; name="name"
longzhonghua
----------------------------174315357574324233095537
Content-Disposition: form-data; name="password"
123456
----------------------------174315357574324233095537--
raw json
POST http://192.168.99.126:8080/article/ HTTP/1.1
Content-Type: application/json
User-Agent: PostmanRuntime/7.44.1
Accept: */*
Cache-Control: no-cache
Postman-Token: 60d7ef6a-7667-47ac-91b9-f98121cf848c
Host: 192.168.99.126:8080
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Length: 74
{
"id": 5,
"title": "test",
"body": "test"
}
以上 两者
Content-Type : application/json
Content-Type: multipart/form-data; boundary
而在 Java 中,一个接口只支持一种 content-type,
json 就用 @RequestBody,
form 表单就用 @RequestParam 或不写,
form-data 就用 MultipartFile。