Axiox
先创建文件夹
- 创建一个api的文件夹
- 创建一个index和其他的.js文件
- index里面主要存放公共的一些东西
import axios from "axios";
//自定义需要访问的url
const instance = axios.create({
baseURL: "http://xxx.xxx.xxx.xxx.info/",
});
//拦截器
// 添加请求拦截器
instance.interceptors.request.use((config) => {
// 在发送请求之前做些什么
console.log(config);
//最后要暴露这个config
return config;
});
// 添加响应拦截器
instance.interceptors.response.use((response) => {
//只返回数据的data
return Promise.resolve(response.data);
});
export default instance;
//request 是自己起名的,但是需要有这个引入
import request from "./index";
export function login(data) {
return request({
url: "/authentication",
method: "post",
data,
});
}
针对get形式的传数据,使用 params,post和patch 用data
如果get传的数据需要序列化,需要加上如下
export function getUserList(params) {
const q = qs.stringify(params, { arrayFormat: "indices", allowDots: true });
return request({
url: "/users?" + q,
method: "get",
});
}
如果链接后面有需要跟着的id,根据具体情况写url
export function editUser(data) {
return request({
url: "/user/" + data.id,
method: "patch",
data,
});
}
export function deleteUser(id) {
return request({
url: "/user/" + id,
method: "delete",
});
}
export function deleteTag(id) {
return request({
url: `/tag/${id}`,
method: "delete",
});
}