nuxt中 使用axios 封装api

安装axios

cnpm install axios --save

 在plugins文件夹下面创建request.js

import axios from "axios";
import { Loading } from 'element-ui';
var loading;

// 创建一个axios实例
const service = axios.create({
    baseURL:"", // url = base url + request url
    withCredentials: true, // send cookies when cross-domain requests
    timeout: 10000, // request timeout 10s
});

// 请求拦截器
service.interceptors.request.use(config => {
    // do something before request is sent
    loading=Loading.service({background:"rgba(0,0,0,.3)"});//开启loading
    return config;
},error => {
    // do something with request error
    console.log(error) // for debug
    return Promise.reject(error);
});

// 响应拦截器
service.interceptors.response.use(response => {
    //do something before response
    if (response.status >= 200 && response.status <= 210) {
        loading.close();//关闭loading
        return response;
    } else if(response.status == 404){
        console.error(response.data.errmsg);
    }else{
        // 不走
    }
},
error => {
    console.log('err' + error); // for debugreturn Promise.reject(error);
})

export default service;

猜你喜欢

转载自www.cnblogs.com/fqh123/p/12952646.html
今日推荐