首页 > 解决方案 > 如何在显示数据之前处理需要令牌的nodejs中的多个传入请求

问题描述

我的 nodejs 项目中有一个中间件,它从我的数据库返回一个令牌,用于从 API 获取数据。这个令牌上有一个过期时间。如果令牌过期,我使用刷新令牌(也在我的数据库中)来获取新令牌。然后返回一个新令牌和一个新的刷新令牌,并且我在数据库中的行被更新。假设两个请求同时到达我的端点,并且令牌此时已过期。如何在令牌更新之前让我的第二个传入请求等待,以便在第一个传入请求已经发送请求时它不会尝试请求新的访问令牌?

标签: node.jsexpress

解决方案


我认为这个问题就是你要找的:How to lock critical section of code in Node/Express with Typescript

也许您应该考虑锁定数据库表。


推荐阅读