Vue3学习:如何在Vue3项目中创建一个axios实例

第一步:安装axios

首先,确保你的项目中已经安装了 Axios。如果还没有安装,可以通过 npm 或 yarn 来安装:

复制代码
npm install axios

第二步:创建 Axios 实例

接下来,可以在项目的某个合适的位置(比如 src/utils/ 目录下)创建一个新的 JavaScript 文件,例如 axiosInstance.js,并在该文件中创建 Axios 实例:

javascript 复制代码
// src/utils/axiosInstance.js
import axios from 'axios';

// 创建 Axios 实例
const api = axios.create({
  baseURL: '你的API基础URL', // e.g., 'https://api.example.com'
  timeout: 5000, // 请求超时时间
  headers: {
    'Content-Type': 'application/json;charset=UTF-8',
    // 可以在这里添加其他默认请求头,如认证token等
  },
});

// 添加请求拦截器(可选)
api.interceptors.request.use(config => {
  // 在发送请求之前做些什么,例如添加Token
  // config.headers.Authorization = `Bearer ${token}`;
  return config;
}, error => {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器(可选)
api.interceptors.response.use(response => {
  // 对响应数据做点什么,例如错误码处理
  return response.data;
}, error => {
  // 对响应错误做点什么
  return Promise.reject(error);
});

export default api;

第三步:在 Vue 组件中使用 Axios 实例

最后,在需要发送HTTP请求的 Vue 组件中,导入刚刚创建的 Axios 实例并使用它来发送请求:

javascript 复制代码
<template>
  <!-- ... -->
</template>

<script setup>
import axiosInstance from '@/utils/axiosInstance';

async function fetchData() {
  try {
    const response = await axiosInstance.get('/your-endpoint');
    console.log(response);
  } catch (error) {
    console.error('There was an error!', error);
  }
}
</script>

<style scoped>
<!-- ... -->
</style>
相关推荐
憧憬成为web高手1 小时前
[HITCON 2017]SSRFme
学习
妖精的羽翼1 小时前
AI + 前端、可视化 & 大屏
学习
xuhaoyu_cpp_java8 小时前
项目学习(三)分页查询
java·经验分享·笔记·学习
小宋加油啊10 小时前
机械臂抓取物体 PVN3D算法调研学习
学习·算法·3d
Xzh042311 小时前
AI Agent 学习路线(Java 后端方向)
java·人工智能·学习
做cv的小昊11 小时前
计算机图形学:【Games101】学习笔记08——光线追踪(辐射度量学、渲染方程与全局光照、蒙特卡洛积分与路径追踪)
图像处理·笔记·学习·计算机视觉·游戏引擎·图形渲染·概率论
星恒随风11 小时前
C++ 类和对象入门(五):初始化列表、explicit 和 static 成员详解
开发语言·c++·笔记·学习·状态模式
sensen_kiss13 小时前
CPT304 SoftwareEngineeringII 软件工程 2 Pt.8 软件测试 (Software Testing)(上)
学习·软件工程
力学与人工智能13 小时前
PPT分享 | 洛桑联邦理工学院魏震:深度几何学习在工业设计优化中的应用
学习·优化·工业设计·深度几何学习·洛桑联邦理工学院
sensen_kiss15 小时前
CPT304 SoftwareEngineeringII 软件工程 2 Pt.9 软件测试 (Software Testing)(下)
学习·软件工程