若依赖前端处理后端返回的错误状态码

【背景】

后端新增加了一个过滤器,用来处理前端请求中的session

若依赖存放过滤器的目录:RuoYi-Vue\ruoyi-framework\src\main\java\com\ruoyi\framework\security\filter\

【问题】

后端返回了一个状态码为403的错误,现在前端需要处理这个错误(跳转到登录首页)。

这是后端发送的ERROR

response.sendError(HttpServletResponse.SC_FORBIDDEN, "Forbidden");

前端页面接收到了
在这里插入图片描述

【解决】

request.js 处理
在vue前端项目中找到request.js 目录:src\utils\request.js
在这里加上对错误码403的处理逻辑即可
这个根据若依这条句写的判断语句 message = "系统接口" + message.substr(message.length - 3) + "异常";

  error => {console.log('err' + error)let { message } = error;if (message == "Network Error") {message = "后端接口连接异常";} else if (message.includes("timeout")) {message = "系统接口请求超时";}else if ( message.substr(message.length - 3) === '403') {message = "未登录或者登录状态已过期,请重新登录";location.href = 'http://localhost:8000/login';}else if (message.includes("Request failed with status code")) {message = "系统接口" + message.substr(message.length - 3) + "异常";}ElMessage({ message: message, type: 'error', duration: 5 * 1000 })return Promise.reject(error)}
)

【解析这句的作用】message.substr(message.length - 3)

    console.log('err' + error) //将错误打印可以看到是:`AxiosError`let { message } = error; //从这个错误中拿到他的错误信息message

在这里插入图片描述
message.substr(message.length - 3) 是从字符串末尾提取最后三个字符的语句
逻辑为
1、计算字符串的长度。
2、从倒数第三个字符开始提取子字符串。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/899427.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

智能的数学公式:Intelligence = Priori knowledge * Reasoning ?

爱因斯坦的相对论公式大道至简, 假如智能有公式的话,会不会是: 其中,两个影响因子分别是先验知识 和 推理能力,推理能力的指数部分可以是整数也是小数,但是暂时还不好确定。 解析:&#xff08…

简单使用LlamaIndex实现RAG

简单使用LlamaIndex实现RAG 1 介绍 LlamaIndex是一个专门为大语言模型(LLM)设计的开源数据管理工具,旨在简化和优化LLM在外部数据源中的查询过程。适合在数据索引上构建RAG。 参考的地址 # 官网地址 https://docs.llamaindex.ai/en/stabl…

Redis延时队列在订单超时未报到场景的应用补充说明

一、工具类设计要点解析 连接保活机制 Scheduled(cron "0 */10 * * * ?") 定时任务每10分钟向所有队列发送心跳消息("keepAlive"),避免云Redis因空闲断开连接。这是针对云服务商自动回收空闲连接的通用解决方案1。 泛…

理解Kubernetes中CoreDNS域名解析与DNS策略

CoreDNS是什么 CoreDNS是一个灵活可扩展的DNS服务器,使用Go语言编写,旨在提供快速、灵活的DNS服务 为什么需要CoreDNS CoreDNS为Kubernetes集群内部的DNS解析提供服务,使得服务之间能够通过域名互相通信 Kubernetes集群中, CoreDNS是运行在…

日报日报流量分析

快捷键 CtrlK,选择需要抓包的网卡 CtrlF可以进行关键字搜索 CtrlM,标记数据包 CtrlShiftN跳到标记处 查看包有多少协议Protocol Hierarchy(协议分级) 搜了一下TCP协议,是互联网最基本的协议&#xff0…

docker-Dify外接Fastgpt知识库

参考地址:https://mp.weixin.qq.com/s/crQrneHZ0sT-c04YanofSw 总体步骤 部署fda(fastgpt-dify-adapter)docker 部署dify,fastgpt在fastgpt创建open apikey,复制知识库id;在dify外接fastgpt知识库; docker安装 下载…

蓝桥杯 之 图论基础+并查集

文章目录 习题联盟X蓝桥幼儿园 图论基础 并查集 并查集,总的来说,操作分为三步初始化(每一个节点的父亲是自己),定义union(index1,index2)函数,定义find(index)函数 并查集详细内容博客 习题 联盟X 联盟X 典型的求解连通分支…

JavaScript运算符与逻辑中断

目录 JavaScript运算符 一、运算符分类与优先级 1. 运算符优先级表 二、算术运算符 1. 基础算术运算 2. 自增/自减运算符 三、比较运算符 1. 基础比较 2. 相等性判断 四、逻辑运算符 1. 基础逻辑运算 2. 短路求值(Short-Circuiting) 3. 逻辑…

Unity顶点优化:UV Splits与Smoothing Splits消除技巧

一、顶点分裂问题概述 1. 什么是顶点分裂 顶点分裂(Vertex Splits)是3D渲染中常见的性能问题,当模型需要为同一顶点位置存储不同属性值时,会创建多个顶点副本。主要分为两类: UV Splits:由UV不连续引起 Smoothing Splits&#…

OpenCV、YOLO与大模型的区别与关系

OpenCV、YOLO 和大模型的区别与关系 1. OpenCV(Open Source Computer Vision Library) 定位:开源的计算机视觉基础库。功能:提供传统的图像处理算法(如图像滤波、边缘检测、特征提取)和基础工具&#xff…

CentOS 7 挂载与卸载文件系统笔记

挂载文件系统 挂载的基本概念 挂载是将存储设备(如硬盘分区、U 盘、光盘等)连接到 Linux 文件系统的特定目录(挂载点),使得系统能够访问存储设备上的数据。 查看已挂载的文件系统 命令:mount 或 df -h mo…

Git项目要改变仓库地址

去掉原仓库git地址和清除原项目的git版本信息的方法 场景需求: 如果是使用自己以前的项目、或者拉取了别人的项目到自己本地。想在此基础上重新开发、初始化项目的话,最好先删掉以前的git信息。 因为如果不删除的话: 1.看着不舒服。根本不需要保留原来的版本信息。 2.我们…

NC,GFS、ICON 数据气象信息可视化--降雨量的实现

随着气象数据的快速发展和应用,气象信息的可视化成为了一项不可或缺的技术手段。它不仅能帮助气象专家快速解读数据,还能为公众提供直观的天气预报信息。今天,我们将从降雨量的可视化出发,带大家一起了解如何实现气象数据的可视化…

质量工程师的2025:从“找bug“到“造质量“的职业进化

想象一下,2025年的某天:阅读原文 早晨,AI测试助手已经自动运行了夜间回归测试,并将可疑问题标记出来 你喝着咖啡,通过质量数据看板分析系统健康度 下午的会议上,你正用业务语言向产品经理解释&#xff1a…

Python实现将字典中键相同的值合并

在Python字典中键是唯一的,但是业务需求是将不同的数据传递到不同的接口,接口列表中存在3个相同的接口,需要将3个接口对应的数据合并一同发送,逻辑实现如下 merge_dict {}for file in files:path os.path.join(folder_path, fil…

数据大屏点亮工业互联网的智慧之眼

在当今数字化飞速发展的时代,数据已成为企业决策的核心依据,而数据大屏作为数据可视化的重要工具,正逐渐成为工业互联网领域不可或缺的一部分。通过直观、动态的可视化展示,数据大屏能够将复杂的数据转化为易于理解的图表和图形&a…

洛谷题单1-B2005 字符三角形-python-流程图重构

题目描述 给定一个字符,用它构造一个底边长 5 5 5 个字符,高 3 3 3 个字符的等腰字符三角形。 输入格式 输入只有一行,包含一个字符。 输出格式 该字符构成的等腰三角形,底边长 5 5 5 个字符,高 3 3 3 个字符…

UE4学习笔记 FPS游戏制作29 更换武器时更换武器的图标

文章目录 制作物体图标UI添加获取武器图标的方法使用事件分发器,通知UI要换枪定义事件分发器调用事件分发器注册事件分发器 制作物体图标UI 在Fpp-UI上添加一个图片,改名为五weaponIcon,勾选SizeToContent,锚点放在右下角,对齐改…

SpringMVC 请求与响应处理详解

引言 在 Java Web 开发中,SpringMVC 作为 Spring 框架的重要模块,提供了强大的请求和响应处理机制。本文将深入探讨 SpringMVC 中请求和响应的处理方式,结合实际案例,帮助开发者更好地理解和应用这些功能。 一、SpringMVC 请求处…

从零开始的 Kafka 学习(四)| 生产消息

1. 生产消息 1.1 生产消息的基本步骤 (一)创建Map类型的配置对象,根据场景增加相应的配置属性: 参数名参数作用类型默认值推荐值bootstrap.servers集群地址,格式为:brokerIP1:端口号,brokerIP2:端口号必…