[ vue3封装axios ]


requiest.js

import axios from "axios";
import { ElMessage } from "element-plus";

const apiService = axios.create();
const NETWORK_ERROR = "网络错误...";

// 请求前
// apiService.interceptors.request.use((config) => {
//     return config;
// }, (error) => {
//     return Promise.reject(error);
// });

// 请求后
apiService.interceptors.response.use((res) => {
    const {code, data, msg} = res.data
    // 0 是成功
    if (code !== 0){
        ElMessage.error(msg || NETWORK_ERROR);
        return Promise.reject(msg || NETWORK_ERROR);
    }
    return data;
}, (error) => {
    return Promise.reject(error);
});


// 不填method默认是get
function request(options) {
    options.method = options.method || "get";
    return apiService(options);
}
export default request;