Nodejs - Login 기능 구현 (쿠키)

dev_swan·2022년 2월 7일
0

Nodejs

목록 보기
16/20
post-thumbnail

cookie란?

  • 정의
    cookie는 사용자가 어떠한 웹사이트를 방문할 경우 그 사이트가 사용하고 있는 서버를 통해 인터넷 사용자의 컴퓨터에 설치되는 작은 기록 정보 파일입니다.
    cookie의 데이터 형태는 key와 value로 구성되어 있습니다.

  • 용도

  1. ID 저장, 로그인 상태 유지
  2. 7일간 다시 보지 않기. (쿠키에 체크한 날짜를 기록하여 다시 방문 했을 때의 시간과 시차를 이용하여 계산)

Login 기능 구현

Js

Html

  • login

  • main page

  • 로그인 성공시

  • 로그인 실패시

  • profile

  1. 우선 user의 내용을 할당하고 처음 홈페이지에 접속했을때 쿠키가 존재하지 않으면 index.html을 렌더해주고 쿠키가 있으면 쿠키와 userid를 비교하여 값이 같을경우 로그인이 되도록 처리하였다.
  2. 쿠키가 존재하지 않아 index.html이 렌더되었으면 userid와 userpw를 입력하여 값이 같으면 로그인성공, 값이 다를경우 로그인실패가 출력되며 다시 login.html로 넘어가게 설정 해주었다.
  3. 이때 로그인이 성공하면 set-Cookie로 쿠키값을 브라우저가 저장하게 해주었다. 그래야 다음 페이지로 넘어가도 login이 유지가 되는것 같다.
  4. 로그인이 성공한 상태에서는 Logout을 누르면 Max-age를 0으로 해주어서 쿠키가 삭제가 되게 하였다. (찾아보니 쿠키를 삭제하는 deleteCookie('변수이름') 방법이 있는것 같다.)
  5. 로그인이 성공한 상태에서 profile을 누르면 userid와 username을 보여주게끔 설정하였다.

그림으로 브라우저와 서버의 쿠키관계

이런느낌일꺼 같습니다.

0개의 댓글