vue项目的创建
vue请求方法汇总(调用方式)
get请求
created() {
//说明:
// <methods> : get、post、put、delete、patch
// 参数1为params:{name:xxx,age:12}时,表示将参数放在url上,不分什么方法
// 参数1为data:{name:xxx,age:12}时,表示不再url上传递参数,放在了body中
// 参数2的字段为params时,表示将参数放在url上传递
// 参数2的字段为data时,表示将参数放在body上传递
// axios.<methods>(url,{参数1}).then(res=>{})
// axios({urld:'url',methods:"<methods>",参数2:'要发送的数据对象'}).then(res=>{})
// 举例 http://www.baidu.com 参数为let obj = {id:1,position:'东京'}
// 第一种方式axios.get()
// params时: http://www.baidu.com?id=1&position=东京
axios
.get("./data.json", {
params: {
id: 2,
name: "小明"
}
})
.then(res => {
console.log(res);
});
// data时: http://www.baidu.com
// 参数不再url上: {id:1,position:'东京'}
axios
.get("./data.json", {
data: {
id: 2,
name: "小明"
}
})
.then(res => {
console.log(res);
});
// 第二种方式axios({})
// params时: http://www.baidu.com?id=1&position=东京
axios({
url: "./data.json",
methods: "GET",
params: { id: 12, name: 1 }
}).then(res => {
console.log(res);
});
// data时: http://www.baidu.com
// 参数不再url上: {id:1,position:'东京'}
axios({
url: "./data.json",
methods: "GET",
data: { id: 12, name: 1 }
}).then(res => {
console.log(res);
});
}
总结: 不论你是采用axios.方法名(url,{params<或data>:{}})
还是axios({url,methods,params<或data>})
都要记住一点,沟通好参数发送的方式
- 要放在url上,传参字段用
params
,采用axios.方法名(url,{params:{}})
或axios({url,methods,params:{}})
- 要放在body中传递:传参字段用
data
,采用axios.方法名(url,{data:{}})
或axios({url,methods,data:{}})
axios并发请求方式
就是同时进行多个请求,并统一处理返回值!
- 多个请求的先后顺序就是书写的顺序
- 用到的方法:axios.all() axios.spread() 连用
axios.all([axios.get("./data.json"), axios.get("/get")]).then(
axios.spread((data, get) => {
console.log(data, get);
})
);