import axios from "axios"; import { Message } from "element-ui"; import store from "@/store"; import { getCookie, getToken } from "@/utils/auth"; // create an axios instance const service = axios.create({ // baseURL: "http://1.14.142.111:9090", // url = base url + request url // withCredentials: true, // send cookies when cross-domain requests timeout: 5000, // request timeout }); // request interceptor service.interceptors.request.use( (config) => { // do something before request is sent if (store.getters.token) { // config.headers['Cookie'] = 'kdservice-sessionid=' + getToken() // config.headers['kdservice'] = getToken() } config.headers["Cookie"] = "kdservice-sessionid=" + getToken(); config.headers["Content-Type"] = "application/json"; return config; }, (error) => { // do something with request error console.log(error); // for debug return Promise.reject(error); } ); // response interceptor service.interceptors.response.use( /** * If you want to get http information such as headers or status * Please return response => response */ /** * Determine the request status by custom code * Here is just an example * You can also judge the status by HTTP Status Code */ (response) => { const res = response.data; // if the custom code is not 200, it is judged as an error. if (res.code && res.code !== 200) { Message({ message: res.message || "Error", type: "error", duration: 5 * 1000, }); return Promise.reject(new Error(res.message || "Error")); } else { return res; } } ); export default service;