用户打开多个标签页时,每个标签页独立检测到 JWT 过期并各自发起刷新请求——实际上是对认证服务器的一次分布式拒绝服务攻击。文章对比了三种解决方案:localStorage 广播、Broadcast Channel API 和 Service Worker 拦截,最终推荐 Broadcast Channel API 作为性能与复杂度的最佳平衡。
🔑 核心要点
多标签的并发刷新风暴是生产环境中最常见的认证事故——5 个标签同时刷新 = 5 倍无效负载。
Broadcast Channel API 是解开这个死结的最优解:一个标签发起刷新,通过频道广播新 token 给所有同级标签。