严格意义上来说,GetMapping不支持@RequestBody。
但是,就怕这个但是…
但是,在某些特殊的情况下,它是支持@RequestBody,例如测试工具请求(ApiPost)
写个方法
@RestController
@RequestMapping("/status")
public class DemoController{
@GetMapping("/test1")
public AjaxResult testBody(@RequestBody Map<String, Object> params) {
return AjaxResult.success(params);
}
}
测试结果:
可见,在ApiPost中,Get请求方式是支持@RequestBody,但是要设置请求方式为Json,也就是写在请求体(body)中。
可是,谁这样请求呢?
谁会把测试工具当作客户端呢,BS架构,都是浏览器充当客户端。
如果是浏览器当作客户端,它的get请求都是放在请求头里,哪有请求体呢?
所以严格意义上来说,GetMapping不支持@RequestBody。
毕竟GET与@RequestParam更配哦。
java,纵享丝滑。