728x90
반응형
1. logout route 구현 순서
=> logout route 만듦
=> logout 하려는 유저를 데이터베이스에서 찾음
=> 그 유저의 토큰을 지움
- 데이터베이스에서 유저의 토큰을 삭제하면 인증이 되지 않아 로그인 기능이 풀려버리기 때문에 해당 유저의 토큰을 지워주면 됨
2. logout route 구현
1) Get을 이용해서 logout route 코드 작성
- 로그인 된 상태에서 토큰을 지워 auth 인증으로 확인해서 로그아웃을 해야하기 때문에 미들웨어로 auth를 넣어줌
app.get('/api/users/logout', auth, (req,res) => {})
2) 로그아웃 하려는 유저를 데이터베이스에서 찾기
- User 모델을 가져와서 User를 찾은 후, User 데이터에 대한 업데이트를 시켜줘야 하며, .findOneAndUpdate() 메서드를 사용함
User.findOneAndUpdate()
3) 그 유저의 토큰을 지워줌
User.findOneAndUpdate(
{_id:req.user._id} // User의 아이디를 찾고,
{token: ""} // token을 지워준다.
... // callback function
)
[결과 출력]
728x90
반응형
'Web > React Node js' 카테고리의 다른 글
리액트 기초 강의 (2) - Create React App & React Router Dom (0) | 2022.03.01 |
---|---|
리액트 기초 강의 (1) - 기본 개념 (0) | 2022.02.28 |
노드 기초 강의 (10) - Auth 기능 (0) | 2022.02.28 |
노드 기초 강의 (9) - 로그인 기능 with Bcrypt & 토큰 생성 with JSON WEBTOKEN (0) | 2022.02.27 |
노드 기초 강의 (8) - Bcrypt로 비밀번호 암호화 (0) | 2022.02.27 |
댓글