현재 Node.js 기반의 express 와 Sequelize를 사용중입니다.
현재 처리하고 싶은 것은 회원 탈퇴시, 다른 곳에서 해당 계정으로 로그인 되어 있는 디바이스에서 API 요청하는 것을 막으려고 합니다.
현재 session 테이블의 해당 계정과 동일한 계정으로 로그인 되어 있는 세션을 모두 지우고자 하는데, 현재는 미들웨어를 통해 해결하고 있습니다.
다른 방법이 어떤게 있을까요?
밑에는 해당 미들웨어 코드입니다.
app.use(function(req, res, next) {
if(!req.session.isLogin)
return next();
const id = req.session.user.id;
models.User
.findOne({where: { id }})
.then((result)=> {
if(result) {
console.log('next');
return next();
}
else {
console.log('here');
req.session.destroy(err => {
if (err)
return res.status(500).json({ message: "server error"});
else
return res.status(200).json({ message: "session destroy cause of delete user"});
});
}
})
});