-
2023 - 08 - 09 nest 미들웨어에서 무한로딩 에러 해결Today I Learned/TIL 08 2023. 8. 14. 20:41
데이터는 CRUD 모두 들어갔고 , 확인도 되지만 , 무한로딩될 때 고치는 법
req = 요청 , res = 응답Controller
@Post('/member') async createMember(@Body() MemberData: createMemberDto, @Request() req) { const myUid = req.user.uid; const result = await this.MembersService.createMember(MemberData, myUid); return { message: '멤버 추가에 성공하였습니다', data: result }; }
@Injectable() export class AuthMiddleware implements NestMiddleware { constructor(private jwtService: JwtService) {} async use(req: any, res: any, next: Function) { const authHeader = req.cookies; if (!authHeader) { throw new UnauthorizedException('JWT not found'); } let token: string; try { const authkey = authHeader.Authentication; const [authType, token] = authkey.split(' '); if (authType !== 'Bearer' || !token) { throw new UnauthorizedException('It is not Bearer type of token or abnormal token'); } const payload = await this.jwtService.verify(token); req.user = payload; next(); } catch (err) { throw new UnauthorizedException(`Invalid JWT: ${token}`); } } }
요청을 하는 것이므로, res가 아닌 req를 써야 한다.
참고로 next() 안써도 무한로딩 된다.
'Today I Learned > TIL 08' 카테고리의 다른 글
2023 - 08 - 14 로컬에서 MYSQL 설치하기 (0) 2023.08.17 2023 - 08 - 10 트렐로 Trello 순서변경 로직 구현 (1) 2023.08.16 2023- 08- 08 Trello - Nest.js로 만들기 (1) (0) 2023.08.09 2023 - 08 - 07 Nest.js TypeORM - Pipe 파이프 (0) 2023.08.07 2023 - 08 - 06 Nest.js 프로젝트 @module, 데코레이터, 루트모듈, imports, controllers, providers, exports, 의존성 주입 DI, IoC, DI, 제어 역전, 의존성(DI) (0) 2023.08.06