inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

local serializer, guard

401 unauthorized문제

해결된 질문

285

윤희중

작성한 질문수 12

0

안녕하세요 제로초님 LocalGuard에서 can으로 넘어가지가 않아서 질문드립니다.

import { ExecutionContext, Injectable } from '@nestjs/common';
import { AuthGuard } from '@nestjs/passport';

@Injectable()
export class LocalAuthGuard extends AuthGuard('local') {
  async canActivate(context: ExecutionContext): Promise<boolean> {
    const request = context.switchToHttp().getRequest();
    console.log('LocalAuthGuard canActivate - request.body:', request); // 추가 로그

    console.log('LocalAuthGuard canActivate - before super.canActivate'); // 추가 로그
    let can = await super.canActivate(context);
    console.log(can);

    if (can) {
      const request = context.switchToHttp().getRequest();
      console.log('login for cookie');
      console.log('request.user:', request.user); // 추가 로그
      await super.logIn(request);
    }

    return true;
  }
}

여기서 보면 requsetbody에는 request.body: { teacherId: 'hee', password: '12534' } 이렇게 제가 설정한값이 들어가고

UnauthorizedException: Unauthorized

at LocalAuthGuard.handleRequest (/Users/mac/Desktop/sideProject/piano-erp-back/node_modules/@nestjs/passport/dist/auth.guard.js:60:30)

at /Users/mac/Desktop/sideProject/piano-erp-back/node_modules/@nestjs/passport/dist/auth.guard.js:44:124

at /Users/mac/Desktop/sideProject/piano-erp-back/node_modules/@nestjs/passport/dist/auth.guard.js:83:24

at allFailed (/Users/mac/Desktop/sideProject/piano-erp-back/node_modules/passport/lib/middleware/authenticate.js:110:18)

at attempt (/Users/mac/Desktop/sideProject/piano-erp-back/node_modules/passport/lib/middleware/authenticate.js:183:28)

at strategy.fail (/Users/mac/Desktop/sideProject/piano-erp-back/node_modules/passport/lib/middleware/authenticate.js:314:9)

at Strategy.authenticate (/Users/mac/Desktop/sideProject/piano-erp-back/node_modules/passport-local/lib/strategy.js:75:17)

at attempt (/Users/mac/Desktop/sideProject/piano-erp-back/node_modules/passport/lib/middleware/authenticate.js:378:16)

at authenticate (/Users/mac/Desktop/sideProject/piano-erp-back/node_modules/passport/lib/middleware/authenticate.js:379:7)

at /Users/mac/Desktop/sideProject/piano-erp-back/node_modules/@nestjs/passport/dist/auth.guard.js:88:3 {

response: { message: 'Unauthorized', statusCode: 401 },

status: 401,

options: {}

}

undefined

teacher.decorator.ts undefined

이렇게 에러가나는데 원인은 잘모르겠습니다. 혹시 어떤부분을 살펴봐야할까요? 추가로 저기이외에 strategy쪽에는 console찍은게 아에 안들어옵니다.

node.js express nestjs typeorm

답변 1

0

윤희중

죄송합니다. strategy쪽에 filed가 오타가났네요..

강의자료는 어디서 다운받나요?

0

110

3

질문 있습니다.

0

294

3

(강의 5:42 질문) providers를 통한 여러 개의 인스턴스 생성 & exports 통한 싱글톤 생성

0

154

2

코드 편집기 확장 프로그램

0

209

2

(질문)비밀 저장소에 접근하기 위한 인증 정보는 로컬 .env에 저장하는지?

0

143

2

(질문)외부 저장소를 통한 환경변수 불러오기 비동기 질문

0

166

3

로그인을 해도 LoggedInGuard쪽에서 false값이 나옵니다.

0

151

2

로그인방법이 고민됩니다.

0

190

2

yarn seed 명령어 실행 시 데이터 삽입 안됨

0

296

4

yarn run db:create 시에 발생하는 데코레이터 오류

0

242

2

npm run db:create 시에 발생하는 decorating 오류

0

231

2

RxJS 디버깅 질문 있습니다.

0

187

3

CacheManager에 대해 질문 있습니다.

0

173

2

로깅은 어떻게 하는게 효율적일까요?

0

222

1

CORS 질문 있습니다.

0

417

2

쿠키 옵션에 대해서 질문 있습니다.

0

184

2

로그아웃 요청이 403 forbidden 에러가 나는데 왜그런걸까요??

0

446

1

가드의 장점에 대해서 질문이 있습니다.

0

225

1

로그 관리에 대해 질문 있습니다.

0

251

2

CORS 에러 질문 있습니다.

0

317

2

배포 환경 DB 연결 질문 있습니다.

0

410

2

socket io 미 연결 문제 (nest & flutter)

1

1151

3

no elements in sequence 에러 관해서 질문이 있습니다.

0

451

1

NextJS와 NestJS 소켓IO 연결

1

1479

1