/* eslint-disable */ import axios from 'axios'; import { TokenDispatcher } from '@/store/dispatchers'; const { destroyToken } = TokenDispatcher; // Full config: https://github.com/axios/axios#request-config // axios.defaults.baseURL = process.env.baseURL || process.env.apiUrl || ''; // axios.defaults.headers.common['Authorization'] = AUTH_TOKEN; // axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'; const config = { baseURL: process.env.VUE_APP_API_URL, // timeout: 60 * 1000, // Timeout // withCredentials: true, // Check cross-site Access-Control }; const _axios = axios.create(config); _axios.interceptors.request.use( (config) => { config.headers.Authorization = localStorage.getItem('token'); return config; }, (error) => // Do something with request error Promise.reject(error), ); // Add a response interceptor _axios.interceptors.response.use( (response) => { if (response.status === 403) { destroyToken(); window.location.href = '/'; return; } return response.data.data; }, (error) => // Do something with response error Promise.reject(error), ); export default _axios;