axios发送post请求前后端交互||@RequestBody/@RequestParam/@PathVariable区别
axios发送post请求前后端交互以及@RequestBody/@RequestParam/@PathVariable区别
·
后端:
@PostMapping
public boolean addTodo(@RequestBody SimpleTodos todo){
int i = todoMapper.addTodo(todo);
return i>0;
}
前端:
// 新增一个todo
export const reqPostTodos=(todo)=>requests.post("/todos",{
todo:todo
},{
headers:{
"Content-Type":"application/json"
}
})
①@RequestBody不能接受GET请求,因为GET请求没有请求体
②@RequestBody接收数据类型为json字符串,所以前端传入data数据应该是json字符串类型
(可以不指定请求头)
特别说明:
@RequestBody @RequestParam @PathVariable
区别:
@RequestParam用于接收url地址传参或表单传参
@RequestBody用于接收json数据
@PathVariable用于接收路径参数,使用{参数名称}描述路径参数
应用:
后期开发中,发送请求参数超过1个时,以json格式为主,@RequestBody应用较广
如果发送非json格式数据,选用@RequestParam接受请求参数
采用RESTful进行开发时,当参数数量较少时,例如1个,可以采用@PathVariable接收请求路径变量,通常用于传递id值
更多推荐
已为社区贡献2条内容
所有评论(0)