๐ป passport๋ Node.js์์ ์ฌ์ฉ์ ์ธ์ฆ์ ํธ๋ฆฌํ๊ฒ ํด์ฃผ๋ ๋ฏธ๋ค์จ์ด
passport.use(new LocalStrategy({
usernameField: 'username',
passwordField: 'password',
passReqToCallback: true //์ธ์ฆ์ ์ํํ๋ ์ธ์ฆ ํจ์๋ก HTTP request๋ฅผ ๊ทธ๋๋ก ์ ๋ฌํ ์ง ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ๋ค
}, function (req, username, password, done) {
if(username === 'user001' && password === 'password'){
return done(null, {
'user_id': username,
});
}else{
return done(false, null)
}
}));
- ๋ก๊ทธ์ธ์ ์ฑ๊ณตํ ์ serializeUser ๋ฉ์๋๋ฅผ ํตํด์ ์ฌ์ฉ์ ์ ๋ณด๋ฅผ Session์ ์ ์ฅ
- ๋ก๊ทธ์ธ์ ์ฑ๊ณตํ๊ฒ ๋๋ฉด Session์ ๋ณด๋ฅผ ์ ์ฅ์ ์๋ฃํ๊ธฐ์ ์ด์ ํ์ด์ ์ ๊ทผ ์๋ง๋ค ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ๊ฐ๊ฒ Session์ ๊ฐ๊ฒ ๋ฉ๋๋ค. ์ธ์ฆ์ด ์๋ฃ๋๊ณ ํ์ด์ง ์ด๋์ deserializeUser ๋ฉ์๋๊ฐ ํธ์ถ๋๋ ๊ฒ์ ๋ก๊ทธ๋ฅผ ์ฐ์ด ๋ณด์๋ฉด ํ์ธ