1. application/x-www-form-urlencoded
发送
这应该是最常见的 POST 提交数据的方式了。浏览器的原生 <form\>
表单,如果不设置 enctype 属性,那么默认就会以 application/x-www-form-urlencoded
方式提交数据。在postman中对应的就是post方式下的 x-www-form-urlencoded
。
在jQuery中,ajax请求,Content-Type的默认值就是application/x-www-form-urlencoded;charset=utf-8
接收
@PostMapping(value = "/test")
public String test1(@RequestParam(name = "username") String username,
@RequestParam(name = "password") String password) {
LOGGER.info("收到的参数:username: {}, password: {}", username, password);
return "leihou";
}
2. application/json
发送
application/json
作为响应头并不陌生,实际上,现在很多时候也把它作为请求头,用来告诉服务端消息主体是序列化的JSON字符串。
//请求数据
var data = {name:'jack',sex:'man'};
//请求数据序列化处理
JSON.stingify(data);
在postman中,可以选择body中的raw选项,然后在右边选择JSON。
接收
@PostMapping(value = "/test")
public String test2(@RequestBody User user) {
LOGGER.info("收到的参数:username: {}, password: {}",
user.getUsername(),
user.getPassword());
return "leihou";
}
@Data
public class User {
private String username;
private String password;
}