vite学习教程04、vue集成axios封装request工具类及应用

ops/2024/10/18 3:20:50/

文章目录

  • 前言
  • 1、安装axios
  • 2、封装request工具类
  • 3、封装api请求工具
  • 4、实战:vue中使用api请求工具类
  • 资料获取

前言

博主介绍:✌目前全网粉丝3W+,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者、专注于Java后端技术领域。

涵盖技术内容:Java后端、大数据、算法、分布式微服务、中间件、前端、运维等。

博主所有博客文件目录索引:博客目录索引(持续更新)

视频平台:b站-Coder长路


1、安装axios

npm install axios

2、封装request工具类

在src目录下创建请求脚本文件:request.js

image-20240810100741618

import axios from 'axios'const service = axios.create({baseURL: import.meta.env.VITE_API_URL,timeout: 5000
})// request 拦截器
service.interceptors.request.use(config => {// 在这里可以设置请求头、请求参数等return configreturn config},error => {console.log(error)return Promise.reject(error)}
)// response 拦截器
service.interceptors.response.use(response => {// 在这里处理返回数据const { data } = responseif (response.data.code !== 200) {console.error('Error:', data.message)return Promise.reject(newError(data.message || 'Error'))} else {return response.data}},error => {console.log(error)return Promise.reject(error)}
)
export default service;import axios from 'axios'const service = axios.create({baseURL: import.meta.env.VITE_API_URL,timeout: 5000
})// request 拦截器
service.interceptors.request.use(config => {// 在这里可以设置请求头、请求参数等return configreturn config},error => {console.log(error)return Promise.reject(error)}
)// response 拦截器
service.interceptors.response.use(response => {// 在这里处理返回数据const { data } = responseif (response.data.code !== 200) {console.error('Error:', data.message)return Promise.reject(newError(data.message || 'Error'))} else {return response.data}},error => {console.log(error)return Promise.reject(error)}
)
export default service;

3、封装api请求工具

image-20240810100848387

不同的请求方式直接修改method即可:get、post、delete

import request from '@/utils/request'// 查询团队成员
export function queryTeamMembers() {return request({url: '/api/open/user/teamMembers',method: 'get'})
}

4、实战:vue中使用api请求工具类

import { queryTeamMembers } from '@/api/openSiteApi'created() {queryTeamMembers().then((data)=>{console.log(data)}).catch(err=>console.log(err))
}

构建运行下,成功访问请求:

image-20240810101031287


资料获取

大家点赞、收藏、关注、评论啦~

精彩专栏推荐订阅:在下方专栏👇🏻

  • 长路-文章目录汇总(算法、后端Java、前端、运维技术导航):博主所有博客导航索引汇总
  • 开源项目Studio-Vue—校园工作室管理系统(含前后台,SpringBoot+Vue):博主个人独立项目,包含详细部署上线视频,已开源
  • 学习与生活-专栏:可以了解博主的学习历程
  • 算法专栏:算法收录

更多博客与资料可查看👇🏻获取联系方式👇🏻,🍅文末获取开发资源及更多资源博客获取🍅


http://www.ppmy.cn/ops/124265.html

相关文章

AI资深导师指导-ChatGPT深度科研工作应用、论文撰写、数据分析及机器学习与AI绘图

2022年11月30日,可能将成为一个改变人类历史的日子——美国人工智能开发机构OpenAI推出了聊天机器人ChatGPT3.5,将人工智能的发展推向了一个新的高度。2023年4月,更强版本的ChatGPT4.0上线,文本、语音、图像等多模态交互方式使其在…

2024年9月30日--10月6日(ue5肉鸽结束,20小时,共2851小时)

按照月计划,本周把ue肉鸽游戏完成,然后进行ue5太阳系 , 剩余14节,218分钟,如果按照10分钟的视频教程1小时进行完的话,则需要22小时,分布在10月2日-10月6日之间,每天44分钟的视频教程…

Study-Oracle-11-ORALCE19C-ADG集群搭建

一路走来,所有遇到的人,帮助过我的、伤害过我的都是朋友,没有一个是敌人。 一、ORACLE--ADG VS ORACLE--DG的区别 1、DG是Oracle数据库的一种灾难恢复和数据保护解决方案,它通过在主数据库和一个或多个备用数据库之间实时复制数据,提供了数据的冗余备份和故障切换功能。…

原生input实现时间选择器用法

2024.10.08今天我学习了如何用原生的input&#xff0c;实现时间选择器用法&#xff0c;效果如下&#xff1a; 代码如下&#xff1a; <div><input id"yf_start" type"text"> </div><script>$(#yf_start).datepicker({language: zh…

英语中 ing后缀

在英语中&#xff0c;“-ing” 后缀通常用于形成动名词和现在分词。以下是 “-ing” 后缀的两种主要用途&#xff1a; 动名词&#xff08;Gerund&#xff09;&#xff1a; 动名词是动词的一种形式&#xff0c;它同时具有动词和名词的特性。它可以作为主语、宾语或表语使用。 例…

PHP函数 func_num_args() 的作用

func_num_args() 是 PHP 中的一个内置函数&#xff0c;用于获取传递给当前用户定义函数&#xff08;UDF&#xff0c;User-Defined Function&#xff09;的参数数量。这个函数在编写需要处理可变数量参数的函数时非常有用。 语法 int func_num_args ( void ) 返回值 该函数返…

Chromium 中chrome.cookies扩展接口c++实现分析

chrome.cookies 使用 chrome.cookies API 查询和修改 Cookie&#xff0c;并在 Cookie 发生更改时收到通知。 更多参考官网定义&#xff1a;chrome.cookies | API | Chrome for Developers (google.cn) 本文以加载一个清理cookies功能扩展为例 https://github.com/Google…

Spring Boot 中 Bean 的机制详解

Spring Boot 的魔力在于其自动配置和 Bean 管理&#xff0c;它极大地简化了 Spring 应用的开发。本文将结合之前的内容&#xff0c;更加全面、深入地解释 Spring Boot 如何管理 Bean、自动装配的底层原理以及相关的使用细节&#xff0c;并提供更丰富的示例。 1. Bean 管理核心…