Node & React/Basic Study
[MAC] Node/React 기초 - 로그아웃 기능
Nanyoung Kim
2021. 1. 16. 11:42
728x90
출처 : 인프런_따라하며 배우는 노드, 리액트 시리즈 — 기본 강의
로그아웃 기능을 구현해보자.
로그아웃 기능 구현 과정은 아래의 세가지 단계로 나눠 생각해볼 수 있다.
1. 로그아웃 route 만들기
2. 로그아웃하려는 유저를 DB에서 찾기
3. 그 유저의 토큰 삭제
index.js 파일에 아래의 코드를 추가해주자.
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
})
})
})
미들웨어 auth에서 설정해준 req로 유저 아이디를 찾아서 정보를 업데이트(findOneAndUpdate) 해준다.
이제 로그아웃 기능을 확인해보자.
MongoDB에서 확인해보면, token이 있는게 로그인된 것이다. 이 유저를 로그아웃 시켜보자.
먼저 'npm run start'로 서버를 켜고, postman에서 send를 보내 로그인한다.
그 후 get을 해보면
위 그림과 같이 로그아웃에 성공한 것을 확인할 수 있다.
728x90