Cộng đồng Hỏi & Đáp của Inflearn
post 등록 오류 질문드립니다
Viết
·
350
0
안녕하세요 .
강사님께서 req.user가 deserializedUser가 실행되면서 생성된다고 강의에서 말씀하셨는데, 게시글 등록 요청을 보내면, req.user가 undefined가 로그에 찍혀서
강사님 깃헙에 들어가 passport 관련 부분 긁어왔는데도 deserializeUser가 실행이 되지 않아 질문드립니다.


deserializeUserexpressnodejsreduxreactNext.js
Câu trả lời 3
1
zerocho
Người chia sẻ kiến thức
로그인 유지가 안 되고 있을 가능성이 제일 높습니다. 로그인 후 새로고침 시 로그인이 유지되나요?(그에 앞서 로그인 유지 부분 진도가 나간 상황인가요?)
0
dev0mountain
Người đặt câu hỏi
강사님께서 답변주신대로 현재 문제가 로그인이 유지가 되지 않아서 발생하는게 맞는것 같아 해결할 수 있을거 같습니다.
늦은 시간까지 신경 써주셔서 감사합니다,
0
dev0mountain
Người đặt câu hỏi
새로고침하면 로그인이 풀립니다.
현재 로그인 진행 상황입니다.
// 로그인
router.post("/login", isNotLoggedIn, (req, res, next) => {
passport.authenticate("local", (err, user, info) => {
if (err) {
// 서버 쪽 에러
console.error(err);
return next(err);
}
if (info) {
// 클라이언트 에러
return res.status(401).send(info.reason);
}
return req.login(user, async (loginErr) => {
if (loginErr) {
console.error(loginErr);
return next(loginErr);
}
const userWithoutPassword = await User.findOne({
where: {
id: user.id,
},
attributes: {
exclude: ["password"],
},
include: [
{
model: Post,
},
{
model: User,
as: "Followings",
},
{
model: User,
as: "Followers",
},
],
});
// res.setHeader('Cookie', 랜덤키)
// console.log("비밀번호가 없는 유저 정보", userWithoutPassword);
return res.status(200).json(userWithoutPassword);
});
})(req, res, next);
}); // 로컬 전략 실행




쿠키 문제입니다. 쿠키가 설정이 안 되는 것인데요. 네트워크탭 들어가서 login요청 눌렀을 때 set-cookie가 있는지와 그게 application탭의 cookie에도 기록되는지 파악이 필요합니다. 또한 getServerSideProps에도 쿠키 설정하는 코드가 있는지도요.