如何在多租户NestJS+Passport实现上从JWT获得租户id



我正在扩展@Nurikabe对NestJS Request Scoped Multitenance for Multiple Databases的应答,以从JWT获取租户ID。

这是关键问题:由于我使用的是passport.js,并且它在模块实现中运行的connectionFactory之后解决了jwt,所以我当时没有租户ID。

有人知道怎么做吗?

我最终得到了这个拼凑:

function getTenantIdFromToken(token: string): string {
  var {acc} = jwt.decode(token) as Payload;
  return acc
}

在连接工厂:

...
const tenant = getTenantIdFromToken(req.req.headers.authorization.split(' ')[1])
...

最新更新