vue中axios发送post请求,后端(@RequestParam)接不到参数
时间: 2023-08-07 17:43:01 浏览: 184
[ vue ] axios 发送 POST 请求,后端不能通过 HttpServletRequest 获取参数
可能是因为你没有正确地设置请求头或请求体。首先,确保你在发送post请求时,设置了请求头的 Content-Type 为 application/json,这样后端才能正确解析请求体中的参数。其次,确保你在请求体中正确地设置了参数,例如:
```
axios.post('/api/xxx', {
param1: 'value1',
param2: 'value2'
}).then(response => {
// handle response
}).catch(error => {
// handle error
})
```
在后端接收参数时,使用 @RequestBody 注解而不是 @RequestParam 注解,例如:
```
@PostMapping("/api/xxx")
public void handleRequest(@RequestBody Map<String, String> params) {
String param1 = params.get("param1");
String param2 = params.get("param2");
// handle params
}
```
注意,这里使用了 Map<String, String> 来接收参数,因为请求体中传递的参数是一个 key-value 对象。如果你需要传递复杂的数据结构,可以使用相应的 Java 对象来接收参数。
阅读全文