Node.js jwt 리프레쉬 토큰

이건선·2023년 3월 13일
0

Node.js

목록 보기
26/32

문제점

2023-03-13 17:21:01 [에러 테스트] error : Cannot set headers after they are sent to the client / userId : 1

로그인을 하고 포스트를 한 번 작성하면 토큰이 사라지면서 로그인이 로그인이 만료되는 오류가 발생했다.

시도해본 것
처음에는 미들웨어의 흐름중에 res가 중복으로 사용되어서 오류가 발생한다고 진단했다 그래서 사용자 인증 미들웨어의 res문을 제거했다. 그래도 같은 문제가 지속되어서 콘솔로그로 장애 코드라인을 추적했고, 초기 토큰의 발급과정과 사용은 문제가 없지만 토큰을 재발급 받을 때 문제가 발생한다는 것을 깨달았다.

해결

...

 res.cookie("Authorization", `Bearer ${newAccessToken}`);

...

알게된것
쿠키 발급시 Bearer ... 를 담아줬는데 단어를 넣지않았고, 식별자인 newAccessToken를 그냥 사용해서 생긴 문제였다. 그래서

...
 const [tokenType, token] = (Authorization ?? "").split(" ");
...

구조분해 할 때 null값을 반환하면서 오류가 발생했던것

profile
멋지게 기록하자

0개의 댓글