WEB5 - Express passport.js

passport.js 세션이용

수업소개

Passport.js는 내부적으로 express-session을 이용합니다. 여기서는 두개의 미들웨어를 연결하는 방법을 알아봅니다. 

 

 

 

강의 1

 

 

 

소스코드

변경사항

 

 

 

강의 2

 

 

 

강의 3

 

 

 

소스코드

변경사항

댓글

댓글 본문
작성자
비밀번호
  1. jun
    조언 감사합니다.
    그러나 해당 코드를 반영해도 동일한 오류가 발견됩니다.
    제 생각에는 기존 코드에도, 작성해주신 코드 모두 로그인 처리가 되었으나,
    ui에 반영되는 타이밍이 이상한 것 같습니다.
    egoing님의 코드를 다운받아서 실행해봐도 동일한 오류가 있는데,
    왜 그런지 모르겠습니다. ㅠㅠ
    대화보기
    • ltaers@naver.com
      저도 같이 공부하는 입장이라서 제가 한것이 맞는 방법인지는 모르겠습니다.
      하지만 조금이나마 도움이 될까 적습니다.
      main.js에 session중에 saveUninitialized가 true로 되어있을겁니다. 이것을 false로 바꾸고 store:new FileStore({path:'./sessions',logFn:function(){}})로 수정했습니다. lonFn을 빼실경우에는 console에 에러가 나와서 lonFn으로 뺏습니다.
      true로 할경우 session을 미리 만드는것이도 false로 할경우는 session을 저장할때에 생성되게 한것입니다.


      logout의 경우는 아래와 같이 작성했습니다.
      아래와 같이 작성하면 session파일에 json파일 자체를 없어집니다.
      router.get('/logout', function (request, response) {
      request.logout();
      request.session.destroy(function(err){
      response.redirect('/');
      });
      });
      대화보기
      • 저도 동일한 오류가 있네요 ㅠㅠ 바로 화면이 바뀌지 않고, refresh를 해야 login ui가 변경되어 있는데,
        어떻게 오류를 잡을 수 있을까요?
        대화보기
        • ltaers@naver.com
          login시에 바로 로그인이 확인이 안되고 web을 한번 눌러줘야 로그인이 적용이됩니다.
          그리고 어쩔때에는 session에 passport가 저장이 되고 어떤경우에는 passport가 저장이 안됩니다.
          또한 한번 로그아웃을 할 경우 로그인이 되지 않는 경우가 발생하는데 이건 어떤식으로 해결해야할까요?
          ps. 그래서 제가 짠코드가 이상한지 한번 이고잉님의 코드를 다운받아서 실행하였는데 같은증상이 발생합니다ㅠㅠ 제 컴퓨터의 문제인가요 ?? ㅜㅜ
        graphittie 자세히 보기