Я новичок в Nest js.
Суть проблемы:
Я пытаюсь добавить событие удаления cookie с jwt в случае если jwt невалиден.
Есть решение установить равное время жизни jwt и cookie.
Но хочется добавить данное событие при ошибки валидации jwt.
Как я понял за валидацию jwt в passport-jwt отвечает данный блок.
import { Injectable } from "@nestjs/common";
import { ConfigService } from "@nestjs/config";
import { PassportStrategy } from "@nestjs/passport";
import { Request } from "express";
import { ExtractJwt, Strategy } from "passport-jwt";
const configService = new ConfigService
@Injectable()
export class JwtStrategy extends PassportStrategy(Strategy) {
constructor() {
super({
jwtFromRequest: ExtractJwt.fromExtractors([(request: Request) => {
return request?.cookies?.jwt
}]),
ignoreExpiration: false,
secretOrKey: configService.get('JWT_SECRET_KEY')
})
}
async validate(payload: any) {
return {
id: payload.id,
firstName: payload.firstName,
lastName: payload.lastName,
email: payload.email
}
}
}
И когда мы успешно проходим валидацию вызывается функция validate. Но когда, при проверка jwt возникает ошибка, то с сервера приходит 401 ответ. И возникает вопрос, как добавить событие удаления cookie?