23.4.2 토큰 발급하기

    비밀키를 설정했으면 user 모델 파일에서 generateToken이라는 인스턴스 메서드를 만들어 주세요.

    src/modles/user.js - generateToken

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

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