axios拦截器学习

如题:

最近一直在用axios,记录一下axios的拦截用法

// 发送请求
Axios.interceptors.request.use(
    (config) => {
        let token = store.state.token;
        let hasAuthority = store.state.authority;
        //给每个请求手动添加sessionId
        if (!hasAuthority) {
            store.dispatch("showNoAuthorityTip", true); //提示无权限
            return false;
        }
        //修改请求头 可根据业务意义自定义
        config.headers["SessionId"] = token;
        return config;
    },
    (err) => {
        return Promise.reject(err);
    }
);

// http response 拦截器
// 接收请求
Axios.interceptors.response.use(
    (response) => {
        // 根据接口返回情况 自定义拦截处理
        if (response.data.status === "异常操作") {
            alert("接口异常,请联系相关开发人员");
            return false;
        }
        return response;
    },
    (error) => {
        return Promise.reject(error);
    }
);

前端统一拦截以后,很多业务代码就非常好写了。

你可能感兴趣的:(axios拦截器学习)