NestJS - AuthenticationHow can you access the current user's information inside a guard to make authorization decisions?AUse context.switchToHttp().getRequest().user inside canActivate()BInject UserService into the guard constructorCUse @CurrentUser() decorator inside the guardDAccess user from global variablesCheck Answer
Step-by-Step SolutionSolution:Step 1: Recall how to get request data in guardsGuards receive ExecutionContext; use context.switchToHttp().getRequest() to access request.Step 2: Access user property on requestUser info is usually attached to request.user after authentication.Final Answer:Use context.switchToHttp().getRequest().user inside canActivate() -> Option AQuick Check:Access user via ExecutionContext request [OK]Quick Trick: Get user from request in canActivate() [OK]Common Mistakes:Trying to inject decorators inside guardsUsing global variables for user dataInjecting services instead of using context
Master "Authentication" in NestJS9 interactive learning modes - each teaches the same concept differentlyLearnWhyDeepVisualTryChallengeProjectRecallPerf
More NestJS Quizzes Authentication - Local strategy (username/password) - Quiz 11easy Database with Prisma - Why Prisma offers type-safe database access - Quiz 8hard Database with Prisma - CRUD with Prisma - Quiz 6medium Database with Prisma - Prisma Client usage - Quiz 3easy Database with TypeORM - Relations (OneToMany, ManyToOne, ManyToMany) - Quiz 3easy Guards - Combining multiple guards - Quiz 11easy Guards - Role-based guards - Quiz 13medium Interceptors - Response transformation - Quiz 1easy Pipes - Custom pipes - Quiz 7medium Pipes - Built-in pipes (ParseIntPipe, ParseBoolPipe) - Quiz 7medium