401状态码的含义和处理

news/2024/12/23 7:33:05/

401状态码的处理

401状态码的含义

axios向服务器端发送请求时,有两种情况会出现401状态码(unauthorized未授权):

  1. 服务端要求传递token信息,而实际发送请求时没有传递。
  2. 发送请求时有传递token到达服务器端,但由于时间比较久,这个token在服务器中已经过期了(服务器存储token有效期时间为2个小时)。
  • 总之,服务器端有些api接口要求传递token,token失效或没有传递,就会报401错误。

401状态码的处理

  1. axios请求拦截器中做token传递操作。
  2. 可以这样设置,在axios响应拦截器中判断请求状态如果是401,就强制用户重新登录系统。

第2种情况处理实现

在axios的响应拦截器中,判断错误码等于401就强制登录(utils/ax.js)

// 引入路由
import router from '@/router'// 配置响应拦截器
axios.interceptors.response.use(function (response) {// 正常响应处理return response
}, function (error) {// 非正常响应处理(包括401)// console.dir(error) // 对象: config request response isAxiosError toJSONif (error.response.status === 401) {// token失效(token在服务器端已经失效了,2个小时时效)// 强制用户重新登录系统,以刷新服务器端的token时效router.push('/login')// 不要给做错误提示了return new Promise(function () {}) // 空的Promise对象,没有机会执行catch,进而不做错误提示了}// return new Promise((resolve,reject)=>{// reject('获得文章失败!')// })return Promise.reject(error)
})

注意

  1. 路由对象.push(xxx) 可以实现编程式导航。

  2. 路由对象:在组件中是 this.$router ,在main.js/ax.js文件中就是router对象(需要import导入)。

  • 模拟服务器端token失效步骤:
  1. 删除客户端sessionStorage数据。
  2. 暂时屏蔽守卫代码(开发完毕再打开)。

http://www.ppmy.cn/news/544204.html

相关文章

5h是什么意思_鱼竿5h是什么意思

指鱼竿的硬度为5h。h指的是鱼竿的硬度,通常情况下相同品牌系列、相同长度的鱼竿,5h的鱼竿会比4h的鱼竿重、粗。不过大家要注意不同品牌对硬度的标准不同,所以大家最好自己亲自试一试硬度。 鱼竿的常见标注有3H、3.5H、4H、5H、6H,…

淘宝电商api接口获取商品类目信息

item_cat_get-获得淘宝商品类目 注册开通key测试 返回值说明 API返回结果完整数据 { "item": { "num_iid": "520813250866", "item_name": "三刃木折叠刀创意迷你钥匙扣钥匙刀户外随身多功能锋利开箱小刀…

淘宝/天猫API:item_cat_get-获得淘宝商品类目

万邦淘宝/天猫获得淘宝商品类目 API 返回值说明 item_cat_get-获得淘宝商品类目 onebound.taobao.item_cat_get 公共参数 请求地址: https://console.open.onebound.cn/console/?ipony 名称类型必须描述keyString是调用key(必须以GET方式拼接在URL中&#xff0…

渗透测试-安全岗位面试题总结(含答案)

渗透测试-安全岗位面试题总结(含答案) 1.上传漏洞 原理 由于程序员在对用户文件上传部分的控制不足或者处理缺陷,而导致用户可以越过其本身权限向服务器上传可执行的动态脚本文件, 并通过此脚本文件获得了执行服务端命令的能力…

计算机毕业设计ssm千益校园帮跑腿信息平台5e9ev系统+程序+源码+lw+远程部署

计算机毕业设计ssm千益校园帮跑腿信息平台5e9ev系统程序源码lw远程部署 计算机毕业设计ssm千益校园帮跑腿信息平台5e9ev系统程序源码lw远程部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse 前端…

java毕业设计创新创业竞赛管理系统2021Mybatis+系统+数据库+调试部署

java毕业设计创新创业竞赛管理系统2021Mybatis系统数据库调试部署 java毕业设计创新创业竞赛管理系统2021Mybatis系统数据库调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse 前端技术&…

java毕业生设计新型农村消费贷电商平台计算机源码+系统+mysql+调试部署+lw

java毕业生设计新型农村消费贷电商平台计算机源码系统mysql调试部署lw java毕业生设计新型农村消费贷电商平台计算机源码系统mysql调试部署lw 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse 前端技…

java计算机毕业设计医院临床管理系统录屏源程序+mysql+系统+lw文档+远程调试

java计算机毕业设计医院临床管理系统录屏源程序mysql系统lw文档远程调试 java计算机毕业设计医院临床管理系统录屏源程序mysql系统lw文档远程调试 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse 前…