springboot接收application/x-www-form-urlencoded类型的请求,获取不到数据

阅读数:1172 评论数:0

跳转到新版页面

分类

python/Java

正文

一、问题解决方式

@PostMapping("/insert")
@ResponseBody
private ResultVO insert1(@RequestParam Map<String, String> params) {
  String data=params.get("data");
  String imei=params.get("imei");
}

二、相关知识

1、@RestController相当于@Controller+@ResponseBody,这样返回json数据就不需要在方法前面加@ResponseBody注解了。

2、@RequestMapping默认method是get,post方式都支持。

@RequestMapping(value = "createPickOrder.do", produces = "application/json;charset=utf-8", method = RequestMethod.POST)

produces = "application/json;charset=utf-8":表示返回数据格式

method = RequestMethod.POST表示请求格式

3、post请求

如果是接收json格式(application/json;charset=utf-8),接收参数要是一个参数或者是一个对象,前面需要加@RequestBody注解。

如果是表单提交(application/x-www-form-urlencoded),接收参数没有要求,即可以对象也可以是多个参数。

4、get请求

参数不能是json格式,只能是表单(application/x-www-form-urlencoded)格式

 




相关推荐

一、request uri部分 @PathVariable 获取路径参数,形如url/{id} 二、request header部分 @RequestHeade

共同点 都是用来表示Spring某个类是否可以接收HTTP请求。 不同点 @Controller标识一个spring类是Spring MVC c

一、@RequestParam 这个注解可以接收来自http请求体或请求url的QueryString(GET、POST)。它可以接收简单类型

一、概述 RequestBodyAdvice 和 ResponseBodyAdvice来对请求前后进行处理,本质上他俩都是AOP拦截器。  RequestBodyAdvice 和 ResponseBo