简介
在日常开发中,经常关注核心的业务或者核心的架构手法,往往忽略了一些小的点点滴滴
今天就记录下在SpringBoot开发中 @RequestMapping 注解中的常见参数简单说明。
说到这两个参数,不得不先回顾一下HTTP协议Header中的两个东西 ContentType 和Accept。
ContentType: 告诉服务器当前发送的数据是什么格式
Accept : 用来告诉服务器,客户端能认识哪些格式,最好返回这些格式
consumes 用来限制ContentType
produces 用来限制Accept
value, method;
value: 指定请求的实际地址,指定的地址可以是URI Template 模式(后面将会说明);
method: 指定请求的method类型, PUT、GET、DELETE、POST 分别对应注解@PutMapping @GetMapping @DeleteMapping @PostMapping;
consumes,produces;
consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;
produces: 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;
params,headers;
params: 指定request中必须包含某些参数值是,才让该方法处理。
headers: 指定request中必须包含某些指定的header值,才能让该方法处理请求。
/**
* consumes 标识处理request Content-Type为“application/json”类型的请求.
* produces标识处理request请求中Accept头中包含了"application/json"的请求.
* 同时暗示了返回的内容类型为application/json;
*/
@ApiOperation(value = "保存用户")
@PostMapping(value = "/execute",produces = MediaType.APPLICATION_JSON_VALUE,consumes = MediaType.APPLICATION_JSON_VALUE)
public String saveUser(@RequestBody User userl){
//TO DO
return "保存成功";
}
网友评论