axios请求总结

总结:

1、get(查询) delete(删除)的四种种请求方式

1.1)普通字符串拼接(建议:传单个属性)

前端代码:

async deleteUser(id){
	console.log(id)
	await axios.delete("/vue/del?id="+id)		//普通拼接字符串
},

后端代码:

	@DeleteMapping("/del")
	public  void del(Integer id){
		System.out.println(id);
	}

字符串拼接
前端代码:

async deleteUser(id){
		console.log(id)
		await axios.delete("/del/" +id)      //字符串拼接,传单个值								
},

后端代码:

@DeleteMapping("/del/{id}")
	//必须使用@PathVariable 动态的接收参数
	public  void del(@PathVariable Integer id){
		System.out.println(id);
	}

1.2)模版字符串拼接(建议:传多个属性)

前端代码:

async deleteUser(id){
	console.log(id)
	await axios.delete(`/vue/del?id=${id}`) //模版字符串,需要用反撇号引起来
},

后端代码:

	@DeleteMapping("/del")
	public  void del(Integer id){
		System.out.println(id);
	}

1.3) restFul的属性写法,拼接字符串(建议:传属性)

前端代码:

async deleteUser(id){
		console.log(id)
		await axios.delete(`/vue/del/${id}`)      //restFul结构,传单个值								
},

后端代码:

@DeleteMapping("/del/{id}")
	//必须使用@PathVariable 动态的接收参数
	public  void del(@PathVariable Integer id){
		System.out.println(id);
	}

1.4) restFul的对象写法,拼接字符串(建议:传对象)

axios的get请求,传对象,需要封装成params对象,URL,{params:user}

前端代码:

async deleteUser(user){
		console.log(user.id)
		await axios.delete("/vue/del",{params:user})  //restFul结构,传对象
},

后端代码:

@DeleteMapping("/del")
	//get delete 请求不需要使用@RequestBody,将json字符串转成对象
	
	public  void del(User user){
		System.out.println(user.getId());
	}

2、post(新增) put(更新)的请求方式

axios的post请求,传对象,不需要封装成params对象,URL,user

2.1)普通字符串拼接(建议:传对象)

前端代码:

let user = {
		name: "post请求的语法",
		age: 20,
		sex: '女'
}
axios.post("http://localhost:8090/axios/user",user)

后端代码:

	/**
     * url:http://localhost:8090/axios/user
     * 参数: 对象接收
     * 返回值: User对象  demo练习简单 由业务决定
     */
    @PostMapping("/axios/user")
    public User insertUserRest(@RequestBody User user){
        System.out.println(user.getName());
        System.out.println(user.getAge());
        System.out.println(user.getSex());
        return user;
    }

3、区分对象,json字符串

3.1)对象

在这里插入图片描述

3.2)json字符串

在这里插入图片描述

3.3)前端传值,后端注解写法

1、后端返回对象是data,axios会自动封装成params对象,获取对象属性需要,params.data.属性

2、前端传值,是form表单等类型(如以下代码),后端接收时不需要加@ResponseBody

name=mysql&age=18&sex=%E5%A5%B3

3、前端传值,是以下类型,后端接收时需要加@ResponseBody

{id: null, name: "mysql", age: 18, sex: "女"}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AimerDaniil

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值