File

src/auth/auth.guard.ts

Extends

AuthGuard('jwt')

Index

Methods

Constructor

constructor(reflector: Reflector)
Parameters :
Name Type Optional
reflector Reflector No

Methods

canActivate
canActivate(context: ExecutionContext)
Parameters :
Name Type Optional
context ExecutionContext No
Returns : any
import { ExecutionContext, Injectable } from '@nestjs/common';
import { Reflector } from '@nestjs/core';
import { AuthGuard } from '@nestjs/passport';
import { IS_PUBLIC_KEY } from './public.decorator';

@Injectable()
export class JwtAuthGuard extends AuthGuard('jwt') {
    constructor(private reflector: Reflector) {
        super();
    }

    canActivate(context: ExecutionContext) {
        const isPublic = this.reflector.getAllAndOverride<boolean>(
            IS_PUBLIC_KEY,
            [context.getHandler(), context.getClass()],
        );
        if (isPublic) {
            return true;
        }
        return super.canActivate(context);
    }
}

results matching ""

    No results matching ""