@RequestBody和@RequestParam的应用场景的区分
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@RequestBody和@RequestParam的应用场景的区分相关的知识,希望对你有一定的参考价值。
参考技术A 该注解有两个属性:前台请求的响应格式为 application/x-www-form-urlencoded : 表单默认的提交数据的格式 的时候。无论用get还是post都可以用@RequestParam接收,这属于简单的类型绑定。@ModelAttribute也可以处理,@RequestBody也能处理。当时提交方式为put时,只能用@RequestBody
当 multipart/form-data, 次类型多用来上传文件类型—只能使用使用@RequestParam。无论是get ,post, put,@RequestBody不能处理这种格式的数据。
当前台使用其他格式, 比如(其他格式包括application/json, application/xml等。这些格式的数据,无论get或者post,put必须使用@RequestBody来处理);
其实这个在之前的时候就记录过,但是平时也没注意到这个问题,直到昨天前端使用React框架传入后端的值为空,fetch对于请求接口都是使用的封装好的request,对于post请求统一都是application/json。
而我使用的是@RequestParam导致前端传值一直穿不过来,这个也可以要求前端修改数据传输格式,
参考博客: https://blog.csdn.net/qq_39584294/article/details/81232891
以上是关于@RequestBody和@RequestParam的应用场景的区分的主要内容,如果未能解决你的问题,请参考以下文章
@RequestBody 和 @RequestParam 有啥区别?
@RequestBody 和 @GetMapping 不能同时使用
@RequestBody 和 @GetMapping 不能同时使用