import axios from "axios"; import router from "@/router"; import vue from '../main-dev.js' import Cookies from "js-cookie"; import qs from "qs"; console.log('use message in request', this); console.log('use message in request', vue); // import Vue from "vue"; // console.log('use message in request2', Vue); // const baseURL = "http://1shoudan.com"; // 正式环境线上 废弃 // const baseURL = "//idaotian.com"; // 正式环境线上 const baseURL = "//test.renminshitang.com.cn/daotian/api_dev"; // 测试环境本地 // const baseURL = "//idagou.cn"; // 正式环境线上 废弃 // console.log(baseURL); // const baseURL = "http://localhost:8001"; // const data1 = require.context("./", false, /\.js$/); // 测试用 // console.log(data1.keys()); axios.defaults.withCredentials = true; //添加这行代码 // 动态设置https协议,拼接到接口基础路径 let httpType = window.location.protocol // axios.defaults.headers.post["Content-Type"] = "application/x-www-form-urlencoded" // console.log(axios); const service = axios.create({ // baseURL: "/api_prod", // url = base url + request url 测试 baseURL: httpType + baseURL, // baseURL: "/api", // url = base url + request url 正式 withCredentials: true, // send cookies when cross-domain requests timeout: 60000, // request timeout crossDomain: true, }); service.interceptors.request.use( (req) => { // console.log(req); // if (req.method == "post" && req.headers["Content-type"]) { // if (req.headers["Content-type"].indexOf("multipart/form-data") == -1 && req.headers["Content-type"].indexOf("application/x-www-form-urlencoded") == -1) { // let dataObj = qs.stringify(req.data); // console.log(dataObj); // req.data = dataObj; // } // } if (localStorage.getItem("LOGIN_DATA")) { console.log('req', req); console.log('req url', req.url); req.headers.Authorization = "Bearer " + localStorage.getItem("LOGIN_DATA_token"); req.headers.agencyId = JSON.parse(localStorage.getItem("DAOTIAN_agencyid")) req.headers.appId = "daotianpc"; req.headers["g-open-env"] = 'WEB-PAGE' if (req.url == '/assistant/custom/job/v2/list') { req.headers.appId = '' } console.log('getToken++++++++++++++++++++++++++++++++++++++++++++++++++++'); } // application/json // if(req.headers.common.Accept.indexOf('application/json') > 0 || req.headers.Accept.indexOf('application/json') > 0){ // console.log('is application/json'); // } return req; }, (err) => { console.log(err); } ); service.interceptors.response.use( (response) => { console.log('response', response); let { msg, status } = response.data; // status = 9999 // return response; // console.log(status); // response.data.status = 9999 if (response.data.status == 9999) { localStorage.removeItem("LOGIN_DATA"); localStorage.removeItem("LOGIN_DATA_token"); localStorage.removeItem("DAOTIAN_agencyid"); router.push("/login"); // 跳转到登录页面 // this.$message.warning(msg); return Promise.reject(new Error("token过期")); } if (response.data.status === 200) { return response; } else if (response.data.status === 2001) {// 职位名称 // message.error('职位名称:请不要填写【' + response.data.msg + '】相关违禁内容'); // this.$message.error(response.data.msg); return response; // return Promise.reject({ // code: 2001, // msg: response.data.msg // }); } else if (response.data.status === 2002) {// 职位名称 // message.error('职位名称:请不要填写【' + response.data.msg + '】相关违禁内容'); console.log('response.data.status === 2002', response.data.status); vue.$message.error(response.data.msg) // this.$message.error(response.data.msg); setTimeout(() => { localStorage.removeItem("LOGIN_DATA"); localStorage.removeItem("LOGIN_DATA_token"); localStorage.removeItem("DAOTIAN_agencyid"); // router.push({ // path: "/login", // }); router.push("/login"); }, 2000); return Promise.reject(new Error("token过期")); // return Promise.reject({ // code: 2002, // msg: response.data.msg // }); } else { // Message.error(response.data.msg) // vue.$message.error(response.data.msg) return response; // return Promise.reject(new Error(msg)); } }, (error) => { console.log(error); // if (error.toString().indexOf("9999") !== -1) { // router.push("/login"); // // Vue.$message.warning(msg) // } else if (error.message.indexOf("500") !== -1) { // } // return Promise.reject(error); } ); export default service;