For Programmer

10. 로그아웃 기능 만들기 - boiler-plate 제작(backend) 본문

React & Node.js 프로젝트/boiler-plate 제작

10. 로그아웃 기능 만들기 - boiler-plate 제작(backend)

유지광이 2020. 8. 1. 15:18
728x90

* 로그아웃 기능은간단하다.

auth 미들웨어에서 로그인이 되어있으면 해당 user정보를 request정보에 담아주고 만약없다면 다음으로 넘어가지 않는다. 따라서 로그인이 되어있다면 해당 user정보가 request에 담겨있기 때문에 그 user정보를 이용하여 토큰만 지워주면 된다.

(routes-user.js)

app.get("/logout", auth, (req, res) => {
  User.findOneAndUpdate(
    { _id: req.user._id },
    { token: "", tokenExp: "" },
    (err, doc) => {
      //1st:찾고자하는 데이터 2nd:변경할 데이터(토큰을지워줌) , 3th:데이터반환
      if (err) return res.json({ success: false, err });
      return res.status(200).send({
        success: true,
      });
    }
  );
});

*몽고DB내장 메서드인 findOneAndUpdate 메소드는 첫번째인자로 찾을 조건 , 두번째 인자로 변경할 데이터 , 3번째인자로 콜백함수를 받는다.

 

동영상강의

 

728x90
Comments