NestJS JwtModule-使用验证和公钥的目的

时间:2019-12-02 00:30:01

标签: authentication jwt passport.js nestjs

用于验证有效jwt的nest文档建议将@ nestjs / passport包和PassportStrategy与passport-jwt策略一起使用。然后,建议使用@ nest / jwt和JwtModule对令牌进行签名。但是,JwtModule还提供了一个verify函数来验证令牌是否有效。为什么文档显示应该使用password-jwt而不是nestjs / jwt软件包进行验证?

在此处NestJS Authentication

找到身份验证文档

此处NestJS nestjs/jwt

找到了NestJS JwtModule文档

1 个答案:

答案 0 :(得分:0)

JwtModule只是jsonwebtoken的包装,并且在大多数情况下,它是使它们更适合NestJS体系结构的方法。如果您决定使用passport和身份验证库,则需要使用passport相关的方法(例如JwtStrategy),以使大多数代码与自身以及如果您选择改用其他护照策略,将有助于减轻必要的更改。

如果您决定不使用passport,则可以绝对使用JwtModuleJwtService的{​​{1}}函数来检查令牌的有效性。

总体而言,verify可以自行处理身份验证,但是如果您已经在使用护照库,那么不妨继续使用JwtModule进行身份验证