美文网首页
axios拦截器配置

axios拦截器配置

作者: 胡儒清 | 来源:发表于2019-08-27 15:04 被阅读0次

以下例子是在vue-cli3下的配置

  1. axios.create() // 创建axios的一个实例,该实例有get和post的方法
  2. process.env.VUE_APP_URL
    • 如果是开发环境,它的值是根目录下.env.development -> VUE_APP_URL对应的值
    • 如果是生成环境,它的值是根目录下.env.production -> VUE_APP_URL对应的值
  3. service.interceptors.request.use() // 配置请求之前的拦截操作
  4. service.interceptors.response.use // 请求成功之后的拦截操作
import axios from 'axios';
import store from '../store';
import router from '../router'
// 创建axios实例
const service = axios.create({
    baseURL: process.env.VUE_APP_URL, // api 的 VUE_APP_URL
    timeout: 50000 // 请求超时时间(因为需要调试后台,所以设置得比较大)
})

// request拦截器,在请求之前做一些处理
service.interceptors.request.use(
    config => {
        console.log('config',config);
        // 给请求头添加laohu-token
        if (store.state.token) {
            config.headers['laohu-token'] = store.state.token;
        }
        return config
    },
    error => {
        console.log(error) // for debug
        Promise.reject(error)
    }
)

// response 拦截器,数据返回后进行一些处理
service.interceptors.response.use(
    response => {
        /**
         * code为非20000是抛错 可结合自己业务进行修改
         */
        const res = response.data
        if (res.code == 666) {
            return res;
        } else if (res.code == 603){
            // code为603代表token已经失效,
            // 提示用户,然后跳转到登陆页面
            router.push('/login')
        } else {
            Promise.reject(res.msg);
        }
    },
    error => {
        Promise.reject('网络异常');
    }
)
export default service

相关文章

  • vue-resource/axios发起请求

    vue-resource 发出 axios发出 vue-resource全局配置 axios 拦截器

  • React 使用 Axios

    Axios 如何发送, 端口不一致, 使用 proxy 配置转发 axios 拦截器, 同意 loading 处理...

  • axios封装

    第一步:配置axios 首先,创建一个axios.js,这里面存放的时axios的配置以及拦截器等,最后导出一个a...

  • #搭建Vue-TypeScript项目(二)

    搭建Vue-TypeScript项目(二) axios拦截器,请求以及tslint配置 配置tslint,也就是t...

  • 使用axios添加请求头的几种方式

    1.传入配置参数 单次请求 多次请求 2.创建axios实例 3.使用axios拦截器 使用拦截器的另一个好处是可...

  • axios的封装

    Axios的拦截器介绍 axios的拦截器原理如下:image.pngaxios拦截器axios作为网络请求的第三...

  • axios进阶之路——拦截器篇

    本课题包含三篇:基础篇;拦截器篇;封装篇。本篇为拦截器篇,主题为axios的请求拦截器、响应拦截器配置。 一、 拦...

  • axios 如何设计拦截器

    最近在做axios的二次封装,在配置拦截器时。发现实际的调用流程与预想的不太一致。所以去看了看axios拦截器部分...

  • Vue方向:axios全局拦截器以及配置的优先级

    1、axios全局拦截器 axios在每一个请求配置中都有一个配置项用于拦截请求或响应结果 这个拦截只能拦截当前配...

  • axios进阶之路——封装篇

    一、 封装前准备 在前两篇讲过了axios的安装、基本配置、拦截器使用,如下: axios进阶之路——基础篇 ax...

网友评论

      本文标题:axios拦截器配置

      本文链接:https://www.haomeiwen.com/subject/mmeeectx.html