axios

作者: Clover园 | 来源:发表于2019-04-13 14:19 被阅读0次
    import axios from "axios";
    import { Message } from "iview";
    
    axios.defaults.timeout = 30000;
    // axios.defaults.baseURL =
    //   process.env.NODE_ENV === "development"
    //     ? config.baseUrl.dev
    //     : config.baseUrl.pro;
    //添加请求拦截器
    axios.interceptors.request.use(
      function(configs) {
        /* eslint-disable no-undef */
        configs.headers["X-Lang-Id"] =
          uac.cookie.getCookie("DPGSSOLanguage") ||
          uac.cookie.getCookie("PORTALSSOLanguage");
        configs.headers["X-Emp-No"] =
          uac.cookie.getCookie("DPGSSOUser") ||
          uac.cookie.getCookie("PORTALSSOUser");
        configs.headers["X-Auth-Value"] =
          uac.cookie.getCookie("DPGSSOCookie") ||
          uac.cookie.getCookie("PORTALSSOCookie");
        configs.headers["apm_biz_key"] = JSON.stringify({
          "X-Emp-No":
            uac.cookie.getCookie("DPGSSOUser") ||
            uac.cookie.getCookie("PORTALSSOUser")
        });
        return configs;
      },
      function(error) {
        return Promise.reject(error);
      }
    );
    //添加响应拦截器
    axios.interceptors.response.use(
      function(response) {
        const headers = response.headers;
        if (headers['content-type'] === 'application/octet-stream;charset=UTF-8') {
          return response.data;
        }
        const res = response.data;
        if (res.code.code !== "0000") {
          if (res.code.code === "0004") {
            Message.info({
              content: res.bo,
              duration: 10,
              closable: true
            });
          }
          // return Promise.reject(res);
        } else {
          //isok = 0;
        }
        return response;
      },
      function(error) {
        console.log("err" + error);
        return Promise.reject(error);
      }
    );
    
    export default {
      //get请求
      get(url, params) {
        //const st = new Date().getTime();
        return new Promise((resolve, reject) => {
          axios
            .get(url, {
              params: params
            })
            .then(response => {
              resolve(response.data);
            })
            .catch(err => {
              reject(err);
            });
        });
      },
      //post请求
      post(url, data, config) {
        //const st = new Date().getTime();
        return new Promise((resolve, reject) => {
          axios
            .post(url, data, config)
            .then(response => {
              resolve(response.data);
            })
            .catch(err => {
              reject(err);
            });
        });
      }
    };
    
    

    相关文章

      网友评论

          本文标题:axios

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