...
Passport.js에서 req 객체 사용하는 방법
메소드 내에서 req, res 객체를 사용하기 위해서는 express의 app.use() 혹은 app.get() ..등 라우터에서 콜백(미들웨어)으로 받아 사용하여야 한다.
const app = express();
app.use((req, res, next) => {
// ...
});
하지만 passport의 serializeUser() 와 deserializeUser() 는 라우터에서 사용되는 메소드가 아니기 때문에 req 객체를 받아오기 힘들다.
만일 passport 전략(strategy)에서 req 요청 객체가 불가피하게 필요할 경우 막막해질 수 밖에 없다.
다행히도 최근 업데이트 버젼에서는, 다음과 같이 함수 아규먼트에 req 를 첫번째 인자로 넣어주면 라우터 없이도 바로 req 객체를 얻을 수 있게 되었다.
passport.serializeUser((req, user, done) => {
console.log(req);
// ...
});
passport.deserializeUser((req, id, done) => {
console.log(req);
// ...
});
인용한 부분에 있어 만일 누락된 출처가 있다면 반드시 알려주시면 감사하겠습니다
이 글이 좋으셨다면 구독 & 좋아요
여러분의 구독과 좋아요는
저자에게 큰 힘이 됩니다.