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; };