Node.js/Node.js
Passport-Local Mongoose
jjikky
2021. 2. 23. 18:21
반응형
설치
>> npm install passport-local-mongoose |
사용
db.js
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const passportLocalMongoose = require('passport-local-mongoose');
const User = new Schema({});
User.plugin(passportLocalMongoose);
module.exports = mongoose.model('User', User);
passport.js
import passport from "passport";
import User from "./models/User";
passport.use(User.createStrategy());
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());
- serialize는 req.session에 뭘 저장할 것인지를 선택하는데, 세션의 용량을 줄이기 위해 보통 user의 id만을 저장한다.
- deserialize는 위에서 받은 id를 이용해 이용자를 식별하고 그 정보를 req.user 객체에 저장한다. >> 로그인 후 재접속시 접속한 이용자가 누구인지 식별한다.
postLogin으로 로그인을 하면 passport.authenticate의 결과로 user를 반환
반응형