22 lines
480 B
TypeScript
22 lines
480 B
TypeScript
import { ExecutionContext, Injectable } from '@nestjs/common';
|
|
import { AuthGuard } from '@nestjs/passport';
|
|
|
|
import { getRequest } from 'src/utils/extract-request';
|
|
|
|
@Injectable()
|
|
export class OptionalJwtAuthGuard extends AuthGuard(['jwt']) {
|
|
constructor() {
|
|
super();
|
|
}
|
|
|
|
getRequest(context: ExecutionContext) {
|
|
const request = getRequest(context);
|
|
return request;
|
|
}
|
|
|
|
handleRequest(err, user, info) {
|
|
if (err || info) return null;
|
|
return user;
|
|
}
|
|
}
|