axios二次封装及api管理

二次封装axios

import axios from "axios";

const instanse = axios.create({
  // 公共前缀
  baseURL: "http://192.168.0.1",
  timeout: 5000
})


// 添加请求拦截器
instanse.interceptors.request.use(function (config) {
  // config对象,记录了本次请求的详细信息
  return config;
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器
instanse.interceptors.response.use(function (response) {
  // 2xx 范围内的状态码都会触发该函数。
  return response;
}, function (error) {
  // 超出 2xx 范围的状态码都会触发该函数。
  return Promise.reject(error);
});


export default instanse

api统一管理

  1. 以函数的形式导出api,防止引入api文件时,一次性请求所有api。

    使用方法:

    api1().then(res=>res)
    
  2. instanse已经设置了公共前缀 http://192.168.0.1,故请求可以用相对地址

import instanse from "./request";

// http://192.168.0.1/a/b
export const api1 = ()=> instanse.get("/a/b")

// http://192.168.0.1/c/d
export const api2 = ()=> instanse.get("/c/d")

vue中使用

import {api1} from "@/request/api"
export default {
  data() {
    return {
      
    }
  },
    
  // 方式1 
  //created(){
  //  api1().then(res=>{
  //    console.log(res);
  //  })
  //},
  
  // 方式2
  async created(){
    await let res = api1()
  },
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值