/* * @Author: shuishen 1109946754@qq.com * @Date: 2022-07-29 15:19:13 * @LastEditors: shuishen 1109946754@qq.com * @LastEditTime: 2022-08-05 10:51:10 * @FilePath: \zhny-dsj\src\router\axios.js * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE */ /** * 全站http配置 * * axios参数说明 * isSerialize是否开启form表单提交 * isToken是否需要token */ import axios from 'axios' import router from '@/router/page/index.js' import { Message } from 'element-ui' import * as auth from '@/utils/auth' const service = axios.create({ baseURL: 'http://dev.jxpskj.com:8020/api', // 2 // baseURL:'http://127.0.0.1:89', timeout: 600000 // request timeout }) // 返回其他状态码 service.defaults.validateStatus = function (status) { return status >= 200 && status <= 500 } // 跨域请求,允许保存cookie service.defaults.withCredentials = true // http request拦截 service.interceptors.request.use( (config) => { const token = auth.getToken() // 添加token token && (config.headers.token = token) return config }, (error) => { return Promise.reject(error) } ) // http response 拦截 service.interceptors.response.use( (res) => { const code = res.data.code // console.log(code, 555) if (code == '403' || code == '401') { sessionStorage.removeItem('token') router.push('/login') } else { return res } }, (error) => { Message({ message: error.message, type: 'error', duration: 5 * 1000 }) return Promise.reject(new Error(error)) } ) export default service