前端新手必看:Axios二次封装超精华教程(附完整代码)
目录一、为什么要封装二、封装三步走1. 创建实例2. 添加拦截器请求拦截器 → 自动塞 Token响应拦截器 → 统一处理数据 错误3. 暴露 request三、封装前后对比很多前端新手在项目中会遇到一个问题每个接口文件里都要重复写baseURL、重复判断错误、重复手动塞 token……代码又臭又长。这篇文章我会从零开始带你理解 Axios 二次封装的每一个步骤保证你看完就能在自己项目里用起来。一、为什么要封装不封装的后果// 每个接口都要重复写这些... axios.get(/api/user, { headers: { Authorization: token } // 重复 }).catch(() alert(报错)) // 重复二次封装 axios 是为了统一规则方便管理例如公司规定所有接口必须自动带 token、统一错误提示等。封装后你只需要写request({ url: /user, method: GET }) // 完事二、封装三步走1. 创建实例根据 axios 的 create 方法创建 request 实例我们就可以自己去配置一些请求基础信息啦比如超时时间基础路径。import axios from axios; import { ElMessage } from element-plus; // 调用错误提示组件 let request axios.create({ baseURL: import.meta.env.VITE_APP_BASE_API, timeout: 5000, });2. 添加拦截器请求拦截器 → 自动塞 Token// 请求拦截器 request.interceptors.request.use((config) { // 自动添加 token const token localStorage.getItem(token); if (token) { config.headers.Authorization Bearer ${token}; } return config; });响应拦截器 → 统一处理数据 错误// 响应拦截器 request.interceptors.response.use( (response) { // 成功回调 // 简化回调的数据 return response.data; }, (error) { // 失败回调 // 处理 http 网络错误 let msg ; // 储存错误信息 let status error.response.status; switch (status) { case 401: msg token 过期; break; case 403: msg 无权访问; break; case 404: msg 请求地址错误; break; case 500: msg 服务器出现问题; break; default: msg 无网络; } ElMessage({ type: error, message: msg }); return Promise.reject(error); // 不要让错误消失要把错误继续传递给调用接口的地方处理。 } );3. 暴露 request对外暴露 request就可以在其他地方直接用 request 发起请求。export default request;三、封装前后对比封装前每个接口 10 行代码重复 100 遍封装后每个接口 1 行代码全局统一管理

相关新闻

AI硬件开发实战:从语音助手挂坠看本地部署与云端协同架构

AI硬件开发实战:从语音助手挂坠看本地部署与云端协同架构

这次我们来看一个硬件 AI 产品:Friend 公司重新推出的 AI 挂坠。这不是一个软件项目,而是一个集成了 AI 语音助手功能的可穿戴硬件设备。它的核心卖点在于将 AI 对话能力从手机或电脑中解放出来,变成一个可以随身佩戴、随时唤醒的独立设备。新…

2026/8/2 4:28:24阅读更多 →
【C 语言入门学习笔记 Day12】指针进阶:字符数组传参、指针函数、函数指针与 const 指针全解析

【C 语言入门学习笔记 Day12】指针进阶:字符数组传参、指针函数、函数指针与 const 指针全解析

本文为 C 语言第十二天的学习笔记,承接上一篇一维整型数组与指针的基础内容,继续梳理指针模块的进阶核心知识点:一维字符数组传参与遍历、指针函数与函数指针的辨析、const 修饰指针的三种形态。这部分内容是 C 语言笔试、面试的高频考点&…

2026/8/2 4:28:24阅读更多 →
时序预测实战指南:从ARIMA到Transformer,核心方法与行业应用解析

时序预测实战指南:从ARIMA到Transformer,核心方法与行业应用解析

1. 项目概述:从数据到洞察,时序预测的实战价值时序数据预测,听起来是个挺学术的词,但说白了,它就是基于历史数据去猜未来。比如,你手机上的天气App告诉你明天会下雨,电商平台预测你下周可能会买…

2026/8/2 4:26:24阅读更多 →
Figma 使用 figma-developer-mcp 搭建本地 mcp,以及 Workbuddy 配置 本地 MCP

Figma 使用 figma-developer-mcp 搭建本地 mcp,以及 Workbuddy 配置 本地 MCP

Figma 使用 figma-developer-mcp 搭建本地 MCP,以及 Workbuddy 配置 本地 Figma MCP 摘要:本文介绍如何通过社区维护的 figma-developer-mcp 项目,在本地搭建 Figma MCP 服务,并配置到 Workbuddy 中,实现设计稿与 AI 辅…

2026/8/2 5:38:40阅读更多 →
组件消失、样式全乱:一次 HBuilderX 发行构建的踩坑复盘

组件消失、样式全乱:一次 HBuilderX 发行构建的踩坑复盘

背单词小程序「优词记 Pro」技术复盘第六篇。前面几篇偏设计取舍,今天是纯粹的踩坑记录——发布前夜,生产构建的产物里导航栏和 tabbar 直接消失了,全局样式错乱,而开发预览一切正常。排查过程有点意思,写出来给同样用…

2026/8/2 5:38:40阅读更多 →
AI驱动复杂组织进化:从机械控制到生态培育的管理范式革命

AI驱动复杂组织进化:从机械控制到生态培育的管理范式革命

1. 项目概述:当复杂组织遇上AI,一场管理学的范式革命最近几年,我身边不少做企业战略、组织发展的朋友,都陷入了一种“知识焦虑”。传统的管理理论,无论是经典的科层制、流程再造,还是近些年流行的OKR、阿米…

2026/8/2 5:38:40阅读更多 →
【计算机毕业设计单片机案例】基于嵌入式开发板的模式可切换交通灯系统研发 基于 STM32 的绿灯时长自定义交通信号灯设计(016101)

【计算机毕业设计单片机案例】基于嵌入式开发板的模式可切换交通灯系统研发 基于 STM32 的绿灯时长自定义交通信号灯设计(016101)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/8/2 5:38:40阅读更多 →
3分钟搞定全网歌曲歌词:163MusicLyrics免费歌词下载工具终极指南

3分钟搞定全网歌曲歌词:163MusicLyrics免费歌词下载工具终极指南

3分钟搞定全网歌曲歌词:163MusicLyrics免费歌词下载工具终极指南 【免费下载链接】163MusicLyrics 云音乐歌词获取处理工具【网易云、QQ音乐】 项目地址: https://gitcode.com/GitHub_Trending/16/163MusicLyrics 还在为音乐播放器里空白的歌词栏而烦恼吗&am…

2026/8/2 5:38:40阅读更多 →
日本麻将什么是役牌:从基础定义到进张效率的深度解析

日本麻将什么是役牌:从基础定义到进张效率的深度解析

日本麻将什么是役牌?役牌是指翻牌(中、发、白)以及场风牌和自风牌,组成刻子即可成立一番的宝牌。作为日麻最基础的起和手段,役牌不仅降低了胡牌门槛,更是新手构建听牌形状的关键支点。阶雀Pro 是日本麻将学…

2026/8/2 5:36:40阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/2 0:00:10阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击: https://intelliparadigm.com 第一章:AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束,将重复性高、模式明确的代码/文档/配置生成…

2026/8/2 0:00:12阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/2 0:00:13阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/2 0:00:10阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击: https://intelliparadigm.com 第一章:AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束,将重复性高、模式明确的代码/文档/配置生成…

2026/8/2 0:00:12阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/2 0:00:13阅读更多 →
无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南:如何实现快速高效的多媒体处理 【免费下载链接】lossless-cut The swiss army knife of lossless video/audio editing 项目地址: https://gitcode.com/gh_mirrors/lo/lossless-cut 在数字媒体创作领域,视频编辑处理的质量损…

2026/8/2 1:29:34阅读更多 →
AI辅助本科论文写作:8大工具评测与高效使用指南

AI辅助本科论文写作:8大工具评测与高效使用指南

1. 本科生论文写作的AI辅助现状本科毕业论文是每个大学生必须跨越的一道坎。记得我当年写论文时,光是文献检索就花了整整两周时间,打印的参考文献堆满了半个书桌。如今AI技术的发展为学术写作带来了革命性变化,合理使用这些工具可以节省80%以…

2026/8/2 2:32:55阅读更多 →
如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手 【免费下载链接】ticket-purchase 大麦自动抢票,支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 还在为抢不到热门演唱会门票…

2026/8/2 2:09:20阅读更多 →