더북(TheBook)

토큰 재발급이 잘되는지 확인해 보고 싶다면 user 모델 파일의 generateToken 함수에서 토큰 유효 기간을 3일로 설정하고, 다시 login API를 요청한 다음 check API를 요청해 보세요. 토큰 재발급이 잘 이루어졌다면, check API를 요청했을 때 Headers에서 새 토큰이 Set-Cookie를 통해 설정될 것입니다.

src/models/user.js - generateToken

UserSchema.methods.generateToken = function() {
  const token = jwt.sign(
    // 첫 번째 파라미터에는 토큰 안에 집어넣고 싶은 데이터를 넣습니다.
    {
      _id: this.id,
      username: this.username,
    },
    process.env.JWT_SECRET, // 두 번째 파라미터에는 JWT 암호를 넣습니다.
    {
      expiresIn: '3d', // 3 동안 유효함
    },
  );
  return token;
};

 

▲ 그림 23-7 토큰 재발급

 

토큰이 재발급된 것을 확인했다면 토큰 유효 기간을 다시 7일로 되돌리세요.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.