springboot怎么接收application/x-www-form-urlencoded类型的请求
这篇文章主要介绍了springboot怎么接收application/x-www-form-urlencoded类型的请求,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
请求数据
id:1
roleName:admin
roleDes:拥有admin权限
Controller几种处理方式
第一种
@ApiOperation("查询用户") @PostMapping("/detailByParam") public void detailByParam(@RequestParam (value = "id") Integer id,@RequestParam(value = "roleName") String roleName,@RequestParam(value = "roleDes") String roleDes) { System.out.println(">>>id="+id+",roleName="+roleName+",roleDes="+roleDes); }
打印信息:
>>>id=1,roleName=admin,roleDes=拥有admin权限
第二种
@ApiOperation("查询用户") @PostMapping("/detailByParam") public void detailByParam(@RequestParam Map<String, String> params) { System.out.println(">>>id="+params.get("id")+",roleName="+params.get("roleName")+",roleDes="+params.get("roleDes")); }
打印信息:
>>>id=1,roleName=admin,roleDes=拥有admin权限
第三种
@ApiOperation("查询用户") @PostMapping("/detailByParam") public void detailByParam(@RequestBody String params) { System.out.println(">>>"+params); }
打印信息:
>>>id=1&roleName=admin&roleDes=%E6%8B%A5%E6%9C%89admin%E6%9D%83%E9%99%90
第四种
@ApiOperation("查询用户") @PostMapping("/detailByParam") public void detailByParam(@RequestBody GetRoleParam getRoleParam) { System.out.println(">>>"+getRoleParam); }
返回错误信息:
“Content type ‘application/x-www-form-urlencoded;charset=UTF-8' not supported”
SpringMVC application/x-www-form-urlencoded接收方式测试
前提:为了便于理解
类全部使用@Controller,不使用RestController
方法使用@RequestMapping
postman都是如下请求
1.参数前不加注解
1.1 request
成功!
1.2 map
失败!
1.3 pojo
成功!
2.参数前添加@RequestParam
2.1 request
失败!
2.2 map
成功!
2.3 poji
失败!
3.参数前添加@RequestBody
3.1 request
失败!
3.2 map
失败!
3.3 pojo
Request | Map | Pojo | |
不加注解 | √ | × | √ |
@RequestParam | × | √ | × |
@RequestBody | × | × | × |
感谢你能够认真阅读完这篇文章,希望小编分享的“springboot怎么接收application/x-www-form-urlencoded类型的请求”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341