我使用OAuth通过site A
对site B
进行身份验证。如果身份验证成功,我会从site A
检索访问权限和刷新令牌,并将其作为Cookie存储在site B
中。到目前为止,这很有用但是存在一个问题:
如果用户将网站的URL输入任何浏览器的地址字段。浏览器已经向其访问令牌已过时的site B
发送请求,因此请求site A
获取新的访问和刷新令牌。但是,如果site B
的答案处于待处理状态,并且用户向站点A发出另一个请求,则site A
将保留旧访问权限和过时的刷新令牌。但是site B
已经发布了一个新的访问和刷新令牌,这些令牌从未传递给客户端。因为同时请求。
我该如何对待这个案子?因为此时用户已被锁定并且必须再次登录(在site A
上)以再次与OAuth提供商(site B
)保持同步。