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
'Node & React > Basic Study' 카테고리의 다른 글
[MAC] Node/React 기초 - CRA 구조 변경과 ReactRouterDom (0) | 2021.01.16 |
---|---|
[MAC] Node/React 기초 - Creat React App과 NPX 장점 (0) | 2021.01.16 |
[MAC] Node/React 기초 — Authentication 기능 구현하기 (0) | 2021.01.14 |
[MAC] Node/React 기초 - 로그인 기능 (0) | 2021.01.14 |
[MAC] Node/React 기초 — MongoDB에 데이터 암호화하여 올리기 (0) | 2021.01.14 |