温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

springboot怎么接收application/x-www-form-urlencoded类型的请求

发布时间:2021-11-02 13:54:49 来源:亿速云 阅读:1721 作者:小新 栏目:开发技术

这篇文章主要介绍了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都是如下请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

1.参数前不加注解

1.1 request

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

成功!

1.2 map

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

失败!

1.3 pojo

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

成功!

2.参数前添加@RequestParam

2.1 request

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

失败!

2.2 map

springboot怎么接收application/x-www-form-urlencoded类型的请求

成功!

2.3 poji

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

失败!

3.参数前添加@RequestBody

3.1 request

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

失败!

3.2 map

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求

失败!

3.3 pojo

springboot怎么接收application/x-www-form-urlencoded类型的请求

springboot怎么接收application/x-www-form-urlencoded类型的请求


Request

Map

Pojo

不加注解

×

@RequestParam

×

×

@RequestBody

×

×

×

感谢你能够认真阅读完这篇文章,希望小编分享的“springboot怎么接收application/x-www-form-urlencoded类型的请求”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI