我一直在很好地实现Angular SPA和JWT,但我总是很难委派新的令牌.
我的基本策略是:
在auth interceptor中获取Auth Error => Delegate with refresh token,替换JWT,否则注销
哪个不起作用,因为多个异步调用将触发,一个人将获得委托函数,但是然后刷新令牌将用于第二个,并且一个将失败,然后用户将被注销.
在其他事情之前:检查令牌到期,如果已过期=>委托与刷新令牌,替换jwt,否则注销
其中有一个类似的问题,第一次调用会注意到它已过期,然后获取新令牌,但由于它是Async,其余的调用将触发并失败等.
这里的基本策略是什么?我觉得应用程序应该做的第一件事就是检查JWT并委托一个新的,如果它是一个坏令牌,但在这种情况下它不应该是异步的.我是否只是在使用时不删除刷新令牌?
任何帮助都会很棒,我觉得这是我理解中的最后一个主要漏洞.谢谢!