新手到 NestJS,我尝试实现 Passport,当我构建应用程序时,得到:
身份验证策略必须有名称
在 auth.module 中:
@Module({
imports: [
UserModule,
PassportModule.register({
defaultStrategy: 'jwt',
property: 'user',
session: false,
}),
JwtModule.register({
secret: process.env.SECRET,
signOptions: {
expiresIn: process.env.EXPIRESIN
}
})
],
providers: [
AuthService,
JwtStrategy
],
...
})
策略(JwtStrategy 类)看起来像:
@Injectable()
export class JwtStrategy extends PassportStrategy(Strategy) {
constructor(
private readonly authService: AuthService
) {
super(
{
jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(),
secretOrKey: process.env.SECRET
}
)
}
public async validate(payload: JwtPayload): Promise<any> {
return null;
}
}
几个小时后,我没有找到任何回应......当然我错过了一些东西,但不知道是什么。
谢谢你的回答...