vue中封装一个axios拦截器,统一管理所有接口请求

1.下载安装axios

npm install axios -S

2.新建文件夹api,新建http.js文件

3.在http.js文件中引入需要用到的库 

import axios from 'axios'
import Vue from 'vue'

4.创建拦截,配置接口路径,请求头

// 配置接口路径
const http = axios.create({
    //baseURL: process.env.baseUrl,
    baseURL: 'http://192.168.0.111/',
    headers: { 'Content-Type': 'application/json' }
})

5.对响应数据做统一处理

http.interceptors.response.use(function (response) {
    // 在接收响应成功后
    if (response.data.code === 200) {
        // 返回收到的数据
        return response
    } else {
        // 对返回错误码做点什么
        // 比如返回首页
        return response;
    }
}, function (error) {
    // 对响应错误做点什么
    return Promise.reject(error);
});

6.配置请求函数

// 公共请求配置
export default async (url, data, type = 'GET') => {
    if (type === 'GET') {
        const res = http.get(url, { params: data })
        return res
    } else if (type === 'POST') {
        const res = http.post(url, data)
        return res
    }
}

7.新建api.js文件,引入http文件

import ajaxHttp from './http/http'

// 商品管理相关
export const goods = {
  getBusinessList: (data) => ajaxHttp('/business/getBusinessList', data, 'POST'), // 新增商品
  delBusinessItem: (data) => ajaxHttp('/business/delBusinessItem', data, 'POST'), // 删除商品
}

8.在vue文件中引入goods就可以使用了

    import {goods} from "@/http/api"
    
    goods.getBusinessList(params).then(res => {
      // console.log(res)
    });

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值