axios组件
运行命令 npm install axios --save
安装好后, 在src目录下新建 文件夹plugins, 在该目录下 创建文件 axios.js
import axios from "axios";
// 一般会在这设置固定的配置 > ★通用的写在这
let config = {
baseURL: "https://api.luffycity.com",
timeout: 20 * 1000 // 请求超时时间
}
const _axios = axios.create(config)
// 请求拦截器 > ★需要读取一些配置携带点东西过去的写在这
_axios.interceptors.request.use(function (config) {
console.log("请求前:", config)
// 1.去pinia中读取当前用户token
// 2.发送请求的url get参数中携带token
// 若axios已设置了params,在原有基础上,添加token这个键值对; 若还未设置,就给当前请求添加params
if (config.params) {
config.params['token'] = "asdfasdfasdf"
} else {
config.params = {token: "asdfasdfasdf"}
}
return config;
})
export default _axios;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
在任意组件中, 使用axios发送请求
import _axios from "@/plugins/axios.js";
// 发送网络请求
// 以下代码相当于向该地址发送get请求
// https://api.luffycity.com/api/v1/course/category/free/?courseType=free&token=asdfasdfasdf
_axios.get("/api/v1/course/category/free/?courseType=free").then((res) => {
console.log(res.data);
})
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8