前端传后端报application/x-www-form-urlencoded;charset=UTF-8
时间: 2024-03-24 16:32:02 浏览: 86
前端传后端报application/x-www-form-urlencoded;charset=UTF-8,这是因为前端使用了默认的Content-Type,即application/x-www-form-urlencoded,而后端需要根据Content-Type来解析请求体中的数据。解决方法是在前端发送请求时设置Content-Type为application/json,或者在后端对Content-Type为application/x-www-form-urlencoded的请求进行解析。
相关问题
content type传参属性值application/x-www-form-urlencoded;charset=UTF-8改为application/json; charset=UTF-8
将 Content-Type 的属性值从 application/x-www-form-urlencoded;charset=UTF-8 改为 application/json; charset=UTF-8 后,请求体中的数据格式也需相应地改变为 JSON 格式。
例如,原来的表单数据:
```
name=John&age=30&gender=male
```
改为符合 JSON 格式的数据:
```json
{
"name": "John",
"age": 30,
"gender": "male"
}
```
这样,后端接收到请求后就可以正确地解析请求体中的数据了。
application/x-www-form-urlencoded;charset=UTF-8的参数后端接收案例
假设前端发送的请求参数如下:
```
username=admin&password=123456
```
后端接收时可以使用以下代码:
```java
@PostMapping("/login")
public String login(@RequestParam("username") String username, @RequestParam("password") String password) {
// 处理登录逻辑
return "success";
}
```
或者使用以下代码:
```java
@PostMapping("/login")
public String login(HttpServletRequest request) {
String username = request.getParameter("username");
String password = request.getParameter("password");
// 处理登录逻辑
return "success";
}
```
这里使用的是Spring MVC的注解@RequestParam,它可以将请求参数绑定到方法的参数上。如果不想使用注解,可以通过HttpServletRequest对象获取请求参数。
阅读全文