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>
相关推荐
JJJJ_iii12 小时前
【机器学习01】监督学习、无监督学习、线性回归、代价函数
人工智能·笔记·python·学习·机器学习·jupyter·线性回归
Han.miracle13 小时前
数据结构——二叉树的从前序与中序遍历序列构造二叉树
java·数据结构·学习·算法·leetcode
知识分享小能手15 小时前
uni-app 入门学习教程,从入门到精通,uni-app基础扩展 —— 详细知识点与案例(3)
vue.js·学习·ui·微信小程序·小程序·uni-app·编程
●VON16 小时前
重生之我在大学自学鸿蒙开发第九天-《分布式流转》
学习·华为·云原生·harmonyos·鸿蒙
无妄无望16 小时前
docker学习(4)容器的生命周期与资源控制
java·学习·docker
Larry_Yanan18 小时前
QML学习笔记(四十二)QML的MessageDialog
c++·笔记·qt·学习·ui
能不能别报错19 小时前
K8s学习笔记(十九) K8s资源限制
笔记·学习·kubernetes
十安_数学好题速析19 小时前
倍数关系:最多能选出多少个数
笔记·学习·高考
vue学习19 小时前
docker 学习dockerfile 构建 Nginx 镜像-部署 nginx 静态网
java·学习·docker
Lynnxiaowen1 天前
今天我们开始学习python语句和模块
linux·运维·开发语言·python·学习