【vue】axios封装拦截

文章目录


1、安装axios

typescript 复制代码
npm install axios

2、新建文件

  • 项目 src 目录创建 util 文件夹
  • util 文件夹下创建文件 axios.config.js
  • 代码如下
typescript 复制代码
import axios from "axios";
// 请求拦截
axios.interceptors.request.use(function (config) {
    const token = localStorage.getItem("token")
    config.headers.Authorization = `Bearer ${token}`
    return config;
}, function (error) {
    return Promise.reject(error);
});
typescript 复制代码
// 响应拦截
axios.interceptors.response.use(function (response) {
    const { authorization } = response.headers
    authorization && localStorage.setItem("token", authorization)
    return response;
}, function (error) {
 	const { status, data } = error.response
    if (status === 401) {
        localStorage.removeItem("token")
        location.reload()
    } else {
        ElMessage.error(data.msg || "系统出错")
    }
    return Promise.reject(error);
});

3、引入文件

  • mian.js 中引入
typescript 复制代码
import "./util/axios.config"

4、使用

html 复制代码
<template>
  <div>帆帆帆帆帆帆帆帆帆帆帆帆帆帆</div>
</template>
typescript 复制代码
<script setup lang="ts">
import axios from 'axios';
axios.get("/api/user/home").then((res) => {
  console.log(res)
})
</script>
相关推荐
LFly_ice6 分钟前
学习React-22-Zustand
前端·学习·react.js
南山安22 分钟前
从反转字符串看透面试官的“内心戏”:你的算法思维到底怎么样?
javascript·算法·面试
东华帝君22 分钟前
vue3自定义v-model
前端
www_stdio23 分钟前
用 localStorage 打造本地待办清单:一个轻量级的前端实践
javascript·css·json
JIngJaneIL25 分钟前
远程在线诊疗|在线诊疗|基于java和小程序的在线诊疗系统小程序设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·小程序·毕设·在线诊疗小程序
fruge42 分钟前
搭建个人博客 / 简历网站:从设计到部署的全流程(含响应式适配)
前端
光影少年1 小时前
css影响性能及优化方案都有哪些
前端·css
呆呆敲代码的小Y1 小时前
2025年多家海外代理IP实战案例横向测评,挑选适合自己的
前端·产品
q***3751 小时前
爬虫学习 01 Web Scraper的使用
前端·爬虫·学习
v***5651 小时前
Spring Cloud Gateway
android·前端·后端