axios封裝

import axios from 'axios';
import Qs from 'qs'
import {
    Message
} from 'element-ui'
const service = axios.create({
    baseURL: '/api',
    timeout: 0,
    validateStatus: function (status) {
        return status >= 200 && status < 300;
    }
})
service.defaults.headers = {
    'X-Requested-With': 'XMLHttpRequest',
    "Content-Type": "application/x-www-form-urlencoded;charset=utf-8"
};
service.interceptors.request.use(config => {
    if (config.method.toLocaleLowerCase() === 'post' 
         || config.method.toLocaleLowerCase() === 'put' 
         || config.method.toLocaleLowerCase() === 'delete') {
           config.data = qs.stringify(config.data)
     }
    if (config.url.indexOf('?') >= 0) {
        config.url += ('&_t=' + new Date().getTime());
    } else {
        config.url += '?_t=' + new Date().getTime();
    }
    return config
}, error => {
    Promise.reject(error)
})
service.interceptors.response.use(
    response => {
        return response.data;
    },
    error => {
        console.log('err' + error)
        Message({
            message: error.message,
            type: 'error',
            duration: 5 * 1000
        })
        return Promise.reject(error)
    })
export default service
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、在Vue-cli里基于axios封裝復(fù)用請求2、vue中axios的封裝3、# vue2.0項目實戰(zhàn)(3)使用...
    羅小耳閱讀 861評論 1 3
  • axios最新版本已經(jīng)不支持jsonp方法了,不想因為一個jsonp請求就又去引一個依賴,所以決定自己封裝一下
    coffee_me閱讀 9,156評論 0 4
  • 項目開發(fā)中網(wǎng)絡(luò)請求這塊的封裝在這里記錄一下已解決 重復(fù)提交 表單和JSON種格式的參數(shù)提交方式 代碼如下:
    Young_Kind閱讀 1,358評論 0 3
  • 公司項目要求用H5寫 作為一個iOS菜鳥搞起來啊,首先是搭建項目框架,項目框架直接用vue-cli搭建好,接下來是...
    千里111閱讀 1,377評論 0 3
  • 已經(jīng)開發(fā)了幾個vue項目,然后對 axios的封裝 不斷優(yōu)化?,F(xiàn)在我用起來也比較方便。2019-04-05更新 把...
    xilong閱讀 13,232評論 1 20

友情鏈接更多精彩內(nèi)容