我正在尝试使用访问和刷新令牌在NestJs上进行身份验证。正如我在nestjs文档中看到的那样,我应该在auth模块中注册我的秘密密钥。我已经做到了这一点。
@Module({
imports: [
MongooseModule.forFeature([{ name: 'RefreshToken', schema: RefreshTokenSchema }]),
UsersModule,
PassportModule,
JwtModule.register({
secret: jwtConstants.secret,
}),
],
providers: [AuthService, LocalStrategy, JwtStrategy],
controllers: [AuthController],
})
export class AuthModule {}
这个秘钥在我创建身份认证服务的令牌时使用。
import { JwtService } from '@nestjs/jwt';
const accessToken = this.jwtService.sign(payload, { expiresIn: '60s'});
const refreshToken = this.jwtService.sign(payload, { expiresIn: '24h' });
当我尝试在this.jwtService.sign函数中设置秘钥时,如下:
const accessToken = this.jwtService.sign(payload, 'secretkey' ,{ expiresIn: '60s'})
我遇到了一个错误。它告诉我函数只能接收两个参数。那么该如何创建两个秘钥并相互使用以获取正确的令牌呢?
jwtService
? - ZungTa