自动重新获取令牌问题

来源:7-19 登陆时机控制与刷新令牌

zippen

2021-08-23

   static async _refetch(data) {
        try {
            await User.login();
        } catch (error) {
            console.log('refetch-login', error)
        }
        data.refetch = false
        return await Http.request(data)
    }

获取令牌的时候,有可能会在重新获取令牌并且请求的过程中会发生异常,这会发生死循环的后果,就会不停发起请求,因为这个是地狱回调。
因此设置了data.refetch = false,这样下次就不会自动刷新令牌了。
但是如果两次都失败了,那怎么办?第三、第四次就不执行了?
我觉得设置成false怪怪的,因为没有后续处理了,过期的令牌就一直存在,发生错误就因为会地狱回调这个问题,所以就一直不管他了?过期的令牌也没能解决啊

写回答

1回答

沁尘

2021-08-23

地狱回调是啥?

如果两次都失败了,那怎么办?如果两次都失败了,说明这个接口就已经有问题了,前端再处理也没有啥意义了,需要通过日志排查问题了。

0
2
沁尘
回复
zippen
那叫回调地狱。。另外回调地狱和这个没啥关系。回调地狱是指嵌套回调,这个是函数调用方式的问题;你说的这个问题本质上是关于业务逻辑处理问题。
2021-08-23
共2条回复

《慕慕到家》家政小程序组件化进阶实战-优质项目

千锤百炼的实践分享,成就你独当一面

494 学习 · 306 问题

查看课程