GetMapping是否支持@RequestBody?

严格意义上来说,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,纵享丝滑。

posted @ 2021-12-31 13:37  layman~  阅读(1027)  评论(0编辑  收藏  举报