session[2021.11.22]

김정훈·2021년 11월 22일
0

스프린트

목록 보기
1/5

1. session-마이그레이션

스프린트 흐름 파악하기!
인증, 보안파트에서 서버와 클라이언트 역할 구분하기
  • .env 파일에 데이터베이스 설정하기
  • 데이터베이스 마이그레이션
    • mysql 접속 후 데이터베이스 생성하기
      • create database authentication
    • 데이터베이스 생성 후 모델과 시드를 통해 마이그레이션 진행하기
      • npx sequelize-cli db:migrate
  • https 인증서를 디렉토리에 복사
  • index.js를 통해 session 쿠키 설정 하기
    • Domain
      • 도메인은 포트 및 서브 도메인 정보, 세부 경로를 포함하지 않는다!!
    • Path
      • 세부 경로는 서버가 라우팅할 때 사용하는 경로
      • 명시하지 않으면 기본으로 / 으로 설정
    • MaxAge or Expires
      • 쿠키가 유효한 기간을 정하는 옵션
    • Secure
      • 만약 해당 옵션이 true로 설정된 경우, 'HTTPS' 프로토콜을 이용하여 통신하는 경우에만 쿠키를 전송!!!
    • HttpOnly
    • SameSite
  • cors 설정
    • 다른 orgin에 대한 요청을 허용하는 정책

2. session-서버 설정

  • req.session 이용하여 저장하기
    • req.session.userId = userInfo.userId

3. session-클라이언트 설정

  • https 인증서를 디렉토리에 복사
    • 클라이언트 실행이 안될 경우 package.json파일에 인증서 파일 이름 넣어주기!!!
  • Axios를 이용한 서버와 통신하기
    • Axios는 브라우저, Node.js를 위한 Promise API를 활용하는 HTTP 비동기 통신 라이브러리
  • 쿠키를 요청에 포함하고 싶으면 2가지 작업이 필요
    • 프론트 : withCredentials : true
    • 서버 : Credentials : true
profile
프론트엔드 개발자를 꿈꾸고 있습니다!

0개의 댓글