Node.js (1)

khxxjxx·2021년 10월 27일
0

드림코딩 by 엘리

목록 보기
11/11

4. HTTP & HTTPS

HTTP(HyperText Transfer Protocol)

  • Request-Response Protocol
  • Stateless Protocol : 클라이언트가 서버에 요청을 할때 어떤 순서대로 하든 또는 어떤걸 먼저 했든 항상 그 요청 그대로 온전한 데이터를 가지고 있어야 한다
  • 상태가 없는 프로토콜에서 Sessions 과 Cookies 를 이용하여 시용자가 로그인되었다는 것을 알수 있으며 다른방식도 가능하다
  • 클라이언트와 서버간에 데이터를 주고받을때 암호화처리가 되어있지 않기 때문에 제3자가 그 데이터를 가로채서 읽을 수 있다
  • 3가지 버전이 존재한다
v1v2v3
- text based
- uncompressed headers
- one file at a time
- inefficient
- binary based protocol efficient/secure
- header compression
- multiplexing
- stream prioritization
- TCP -> UDP

HTTPS(HyperText Transfer Protocol Secure)

  • SSL 이나 TLS와 같은 조금더 암호화된 안전한 방식으로 주고 받기 때문에 제3자가 더이상 그 내용을 볼수 없다

Status Codes

  • 1xx : informational
    • 100 : continue 잘하고 있으니 계속 요청하라는 뜻
    • 102 : processing 처리중
  • 2xx : successful
    • 200 : ok
    • 201 : created
    • 204 : no content
  • 3xx : redirection
    • 301 : moved permanently
    • 302 : found
    • 303 : see othere (get)
    • 307 : temporary redirect (same methods)
    • 308 : permanent redirect (same methods)
  • 4xx : client error
    • 400 : bad request
    • 401 : unauthorized
    • 403 : forbidden
    • 404 : not fount
    • 405 : method not allowed
    • 409 : conflict
  • 5xx : server error
    • 500 : internal server error
    • 502 : bad gateway
    • 503 : service unavailable

관련문서(영문버전, 한국어버전)

Request Methods

  • GET : get
  • POST : create
  • PUT : replace
  • DELETE : delete
  • PATCH : replace partially
  • HEAD : get without body
  • OPTIONS : all supported methods for url
  • TRACE : echoes the received request
  • 이 중 GET, HEAD, OPTIONS, TRACE는 읽기전용이다

관련문서(영문버전, 한국어버전)

Headers

  • 클라이언트와 서버가 요청 또는 응답할 때 다양한 정보들을 헤더에 넣어서 보낸다
  • Headers 안에는 표준화된 Standard와 Custom이 있다
  • 원하는 데이터 Custom을 추가하고 싶을때는 예전엔 X-원하는데이터방식으로 사용했지만 2012년도부터는 더이상 권고되지 않고 domain-key or domain.key로 사용한다

관련문서(영문버전, 한국어버전)

profile
코린이

0개의 댓글