vue中axios请求的封装

本文详细介绍了在Vue.js项目中如何对axios进行封装,以优化HTTP请求,提高代码复用性和可维护性。通过创建一个axios实例,配置默认参数,结合typescript进行类型检查,使得请求更加规范且易于管理。
摘要由CSDN通过智能技术生成
import axios, {
    AxiosResponse } from "axios";
import {
    message } from "ant-design-vue";
import router from "../router";

// 自定义的后端接口
export interface IResponse extends AxiosResponse {
   
  code?: 0 | 1;
  data: any;
  message?: string;
  timestamp?: number;
}

// 通过环境变量拿到路由
// vite中使用import.meta.env.xxxx, webpack中使用process.env.xxxx
const baseURL = import.meta.env.VITE_ENV == "dev" ? "/api" : "http://localhost:3001";

// 定义基础 
const Axios = axios.create({
   
  baseURL: baseURL,
  timeout: 10000,
});

// 返回拦截器
Axios.interceptors.response.use(
  (response) => {
   
    if (response.data.code == 1) {
   
      return Promise.resolve(response.data);
    } else {
   
      message.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值