The Web Developer - (Udemy)_ Express의 라우터와 쿠키

‍정진철·2022년 8월 15일
0

web devloper (udemy)

목록 보기
22/34

1) Express 라우터 개요

Express 라우터 사용시 라우트를 파일로 옮기고 분류가 가능해짐.

  • 라우터 객체는 미들웨어와 라우터의 인스턴스이다.
  • 그래서 라우터를 하나의 작은 앱으로 본다.
  • 라우트와 미들웨어가 존재하고 완전한 앱을 만들기 위해 다른 라우터와 결합한다.
  • 라우트를 파일마다 나눠서 넣는 것도 가능.

Ex) 유기견 보호소 앱

/shelters
POST /shelters
/shelters/:id
/shelters/:id/edit

/dogs
POST /dogs
/dogs/:id

OR

<중첩 라우트> : /dogs/:id/reviews/reviwId


  • app.use를 이용해 router 변수만 가져오면 사용가능.

결과

  • 아이디 입력 (/shelters/:id)

  • 편집창


better way

  • 라우트 객체에 /shelter 라는 경로를 지정해주면 라우트에서 반복되는 shetlers를 피할 수 있음


2) Express 라우터와 미들웨어

  • admin 파일에 라우트 미들웨어를 사용함으로써 해당 페이지에 접근할 때만 적용되는 기능을 적용시킬 수 있다.

결과

isAdmin = true (query)

3) 쿠키 개요

쿠키란?

  • 서버는 웹페이지에서 사용자 요청을 받고 쿠키를 반환할 수 있음.
  • 그것이 사용자의 고유한 식별자가됨.
  • 그리고 사용자가 재방문 할 때 마다 쿠키가 요청과 함께 전송됨.
  • 따라서 쿠키가 사용자를 식별하는 고유한 식별자나 플로그로서 작용함.

4) 쿠 키 보내기

쿠키 설정 메소드 : res.cookie(name, value, [options])

5) 쿠키 parser 미들웨어

쿠킹을 파싱하려면 cookie parser 라는 패키지 설치 필요.


쿠키 name value 변경 시

  • 중요한 정보를 저장할 때 에는 쿠키 사용 x
  • 쿠키는 단순히 요청과 요청사이에 상태성을 부여.

6) 쿠키 서명하기

쿠키서명은 정보의 암호화가 아닌 단순 조작화에 가까움.

  • 쿠키값을 숨기기 위한 것은 아님 (grape라고 나와있음)


  • signed된 grape는 보이지 않음.


  • signed된 cookie 까지 요청시 grape 볼 수 있음.


  • 쿠키의 값을 Agrape 에서 Aapple로 변경하니 value가 false로 뜨는걸 확인 가능하다 따라서 쿠키가 누군가에 의해 변경됬거나 무결성이 사라졌다는 사실을 알 수 있다.


profile
WILL is ALL

0개의 댓글