개발/library, framework
[JWT | Node.js] expiresIn 만료기간 적용이 안될때
prpn97
2023. 9. 6. 08:58
문제점
새로 사이드 프로젝트를 준비하면서 jwt쪽을 구현하고 있는데, 갓 생성한 토큰인데도 jwt expired로 이미 토큰이 만료되었다는 이슈가 있었다.
환경변수로 expiresIn에 해당 값을 넣어줬으나 적용되지 않아서 생긴 문제로 보인다.
아래와 같이 구성했다.
const accessToken = jwt.sign(
accessTokenPayload,
authConfig().ACCESS_JWT_SECRET,
{
expiresIn: authConfig().ACCESS_JWT_EXPIRATION,
audience: 'onlyou',
issuer: 'test',
},
);
해결
expiresIn: parseInt(authConfig().ACCESS_JWT_EXPIRATION, 10),
간단하다. env에서 가져온 환경변수가 문자열로 되어있어서 정수로 바꿨더니 잘 적용되었다.
적용되지 않았을 때 에러를 보면 UTC시간 기준으로 현재 시간이 만료시간으로 잡혀있었는데, 아예 적용되지 않았던 것이다.
728x90