Closed hunter-hwang-dev closed 3 weeks ago
강의를 다시 보는 중...
그렇구나.
남들 다 passport 쓰나보다. 그럼 어째, 좀 복잡해 보이더라도 써야지.
https://www.passportjs.org/tutorials/password/signup/ passport.js 공홈에서 읽은 부분. 아, passport 사용이 어려워 보였던 이유를 깨달았다.
passport도 hashing 기능을 지원하기 때문에, 많은 예시 코드가 hashing을 포함해서 써져 있는데 나는 hashing 라이브러리를 따로 가져와서 쓰기 때문이었다.
그래서 ChatGPT한테 이렇게 물어봄.
아하 그렇군! 코드가 길어져서 무슨 차인가 했는데, req.login
부분이 자동으로 session 체크를 해주는 것이었다.
그럼 쿠키가 있는지 확인은 어케 하지? 구글링 해서 찾기 어려워서 ChatGPT한테 물어봄.
req.isAuthenticated()
의 존재를 알았으면 구글링이 잘 되었을 텐데! 역시 뭐라도 조금씩 배워야 한다.
근데 isSessionValid || false
는 동어반복 아니야?
true || false == true
, false || false == false
잖아.
그치. 역시 예시 코드는 꼭 읽어보고 뜯어 써야 된다.
테스트 용이성을 위해 좀 헷갈리는 구조를 정돈해 보았다.
실제 서비스 시에는 admin을 다른 PORT로 빼고, quick-tips를 React로 '동적이게' 구현할 예정이다.
<button onclick="window.location.href='/admin'">admin 페이지로 이동</button>
이러면 간단히 리다이렉트 버튼을 만들 수 있다.
로그인 실패. 왜지?
솔직히 passport.js 사용 코드 읽었을 때 뭐가 뭔지 구분하기 어렵다. 쿠키에 세션 저장은 해야 하는데...