db 에서 해당 유저의 token 을 지워주면 된다.
→ 인증이 안돼서 로그인 기능이 풀려버리게 된다.
userSchema.statics.findByToken = function(token, cb){
var user = this;
// decode token
jwt.verify(token, 'secretToken', function(err,decoded){
// 유저 아이디를 이용하여 유저를 찾은 다음에
// 클라이언트에서 가져온 token 과 db 의 token 이 일치하는 지 확인
user.findOne({"_id" : decoded, "token" : token}, function(err, user){
if(err) return cb(err);
cb(null, user)
})
})
}
app.get('/api/users/logout', auth, (req, res) => {
User.findOneAndUpdate({ _id : req.user._id },
{ token : ""},
(err, user) => {
if(err) return res.json({success : false, err})
return res.status(200).send({
success : true
})
})
})
우연히 들어온 곳에서 널 발견함 이건 우연일까...?ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 이거 쓰려고 가입함