我想创建一个多角色访问项目,在该项目中,我必须根据用户的角色允许用户,因此,我必须根据角色创建多个Middleware&Guard,但是没有文档说明如何在Nest中获取当前的登录用户详细信息中间件,以及如何从Nest Guard和中间件中的jsonWebToken获取当前登录用户的详细信息,
我有Users收集架构就是这样
UsersCollectionSchema: {
name: '',
email:'',
password:'',
roles: [ admin, editor]
}
答案 0 :(得分:0)
一旦用户通过了身份验证,我建议您将用户对象附加到请求,这是常见的方式,以便可以通过请求访问中间件内部的用户,并通过请求访问保护内部的用户可以从executionContext获取
下面是一个示例https://github.com/nestjs/nest/blob/master/sample/01-cats-app/src/common/guards/roles.guard.ts