繁体   English   中英

Spring Boot 中的 POST 请求是否应该使用 @RequestParam 或 @RequestBody?

[英]Should @RequestParam or @RequestBody be used for POST requests in Spring Boot?

@RequestBody要求为 JSON 主体创建一个 class 以反序列化,而@RequestParams不需要。

假设不需要对参数进行混淆,那么应该将哪一个用于 POST 请求? 有关系吗? 是否推荐其中之一?

@RequestBody要求为 json 主体创建一个 class 以反序列化为

不,它没有。 例如,您可以反序列化为MapList ,具体取决于 JSON。

哪个应该用于 POST 请求?

这取决于请求的Content-Type (mime 类型)。

有关系吗?

是的。

是否推荐其中之一?

对于 mime 类型application/x-www-form-urlencodedmultipart/form-data您应该使用@RequestParam

对于其他任何事情,您都需要使用@RequestBody

@RequestParam,当你想从 GET/POST 请求到你的方法参数的 map 时,你可以使用它,你可以为它设置一些默认值,以防你没有传递任何参数。 @RequestBody,您可以在期望 object 时使用,因为它会自动将 json 反序列化为 java 类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM