美文网首页
axios配置

axios配置

作者: yemu2626 | 来源:发表于2020-08-26 11:15 被阅读0次
    import axios from 'axios';
    
    // 创建实例
    const instance = axios.create({});
    
    // 基础配置
    instance.defaults.baseURL = '';
    instance.defaults.timeout = 10000; // 超时时间
    instance.defaults.withCredentials = true; // 是否允许携带cookie
    
    // json(默认)
    instance.defaults.headers.put['Content-Type'] = 'application/json;charset=UTF-8';
    // 请求拦截
    instance.interceptors.request.use(config => {
        return config;
    });
    
    
    /* // form data -> post
    import qs from 'qs'; // npm install --save qs
    instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
    // 请求拦截
    instance.interceptors.request.use(config => {
        if (config.method === 'post') {
            config.data = qs.stringify(config.data);
        }
        return config;
    });
    */
    
    // 响应拦截
    instance.interceptors.response.use(response => {
        const { status } = response;
        if (status === 200) {
            return Promise.resolve(response);
        } else {
            return Promise.reject(response);
        }
    }, error => {
        if (error.response.status) {
            switch(error.response.status) {
                // 未登录
                case 401 : 
                    break;
                // 登录失效
                case 403 :
                    break;
                // Not Found
                case 404 :
                    break;
                // 服务器错误
                case 500 :
                    break;
                default :
                    break;
            }
            return Promise.reject(error.response);
        }
    });
    
    export default instance;
    

    相关文章

      网友评论

          本文标题:axios配置

          本文链接:https://www.haomeiwen.com/subject/ymexsktx.html