Closed lovelyJason closed 4 weeks ago
你应该参考 status=401时的处理,这个问题已经修复了。
你应该参考 status=401时的处理,这个问题已经修复了。
你说的是这地方吧,也不对哈, 我是5.4.2的版本,看了你github最新代码, 这个东西有一点问题。就是接口请求的http状态码所有全部是200, 当token过期时返回的{code: "401", msg: "token is expired"}是在response.data里面。我即使改了后端把http状态码和data.code都变为401,还是不得行哈,页面会空白,控制台报{code: 401, msg: "token is expired"}路由注册失败。这个问题还是在的哈
我把
// 如果不是 401 错误,直接抛出异常
if (response?.status !== 401) {
throw error;
}
改成了
// 如果不是 401 错误,直接抛出异常
if (response?.data.code!== 401) {
throw error;
}
再页面上点击接口请求的按钮,报401,此时系统无任何回馈,我认为应该是要做两件事:1.清空localstorage里面的vben-web-antd-5.4.2-dev-core-access,这里存储着accessTOken。 2:重定向到/auth/login页面
然后紧接着一个问题就是此时刷新页面,刚才还能看到界面,现在全屏空白,进度条一直在转
dansh但是我又不敢在这里面直接window.location.href = '/auth/login',经测试,在login页一直无限循环调getinfo接口,很是头疼
你应该参考 status=401时的处理,这个问题已经修复了。
你说的是这地方吧,也不对哈, 我是5.4.2的版本,看了你github最新代码, 这个东西有一点问题。就是接口请求的http状态码所有全部是200, 当token过期时返回的{code: "401", msg: "token is expired"}是在response.data里面。我即使改了后端把http状态码和data.code都变为401,还是不得行哈,页面会空白,控制台报{code: 401, msg: "token is expired"}路由注册失败。这个问题还是在的哈
我把
// 如果不是 401 错误,直接抛出异常 if (response?.status !== 401) { throw error; }
改成了
// 如果不是 401 错误,直接抛出异常 if (response?.data.code!== 401) { throw error; }
再页面上点击接口请求的按钮,报401,此时系统无任何回馈,我认为应该是要做两件事:1.清空localstorage里面的vben-web-antd-5.4.2-dev-core-access,这里存储着accessTOken。 2:重定向到/auth/login页面
然后紧接着一个问题就是此时刷新页面,刚才还能看到界面,现在全屏空白,进度条一直在转
dansh但是我又不敢在这里面直接window.location.href = '/auth/login',经测试,在login页一直无限循环调getinfo接口,很是头疼
同时也会无限循环调logout接口,然后logout返回http200, {code: 401}, 这里抛错了,又继续无限循环调logout
而且另外提一嘴,对于不需要token过期重试的行为时,如图片所示,这段代码要注释掉,另外,在拦截器里得把token清空掉,pinia的插件会连带着把localsrorage里面的token也清掉,这样刷新页面才不会出问题
是的,我也遇到了这个情况。
是的,我也遇到了这个情况。
哎,所以就不懂,这个最新代码bug本来就是存在的,作者为啥要关闭这个issue
Version
Vben Admin V5
Describe the bug?
3945
跟这个问题一模一样,我后端返回来http状态码为200,data.code为401时会,在响应拦截器中
然后会无限死循环,在登录页一直调getinfo接口
我如果不改代码的话,默认这个token过期刷新页面后页面直接空白了,啥也没有。这个bug还在
Reproduction
暂无
System Info
Relevant log output
No response
Validations