import axios from 'axios'; import { getCookie } from '../api/cookies' import {getQueryString} from '../api/unit' const instance = axios.create({ timeout: 5000, baseURL:'', withCredentials: true, headers: {token: getCookie('token')} }); //http response 拦截器 instance.interceptors.response.use( response => { var res=response.data; if (res.code == 'A0301' || res.code == 'A0311') { // 拦截 对应特殊错误特别处理 } else { return response; } }, error => { console.log("response error :" + error); if (error.response) { switch (error.response.status) {// token失效处理 case 401://token 失效 return; } } return Promise.reject(error) // 返回接口返回的错误信息 } ); /** * 封装get方法 * @param url * @param data * @returns {Promise} */ export function get(url,params={}){ return new Promise((resolve,reject) => { instance.get(url,{ params:params }).then(res => { resolve(res.data); }).catch(err =>{ reject(err.data) }) }) } /** * 封装post请求 * @param url * @param data * @returns {Promise} */ export function post(url,data = {}){ return new Promise((resolve,reject) => { instance.post(url,data).then(res => { resolve(res.data); }).catch(err =>{ reject(err.data) }) }) } /** * 封装patch请求 * @param url * @param data * @returns {Promise} */ export function patch(url,data = {}){ return new Promise((resolve,reject) => { instance.patch(url,data).then(res => { resolve(res.data); }).catch(err =>{ reject(err.data) }) }) } /** * 封装put请求 * @param url * @param data * @returns {Promise} */ export function put(url,data = {}) { return new Promise((resolve, reject) => { instance.put(url, data).then(res => { resolve(res.data); }).catch(err =>{ reject(err.data) }) }) }
axios ajax vue 封装axios get post put 等
最新推荐文章于 2022-04-20 09:13:55 发布