Home > Common > Internet > HTTP 이야기 (Cheat Sheet?)

HTTP 이야기 (Cheat Sheet?)
인터넷 HTTP

이 문서는 지속적으로 수정됩니다!

HTTP를 먼저 공부한다면 재미없고 거의 대부분 이해하기가 힘들것이다. 내 생각에는 실제로 웹 서버/페이지와 같은 애플리케이션을 개발하면서 HTTP가 가까이 있는것 처럼 느껴질때 알아보는것이 적절한 시기라고 생각한다. 혹은 그 떄가 오기전 MDN의 HTTP 문서정도는 미리 읽어본다면 좋을 것이다.

MDN HTTP 문서

HTTP의 A부터 Z까지 알 수 있다.

반드시 알자!


  1. HTTP/1.1의 이해
  2. 1을 이해하고 HTTP/3.0 까지 어떻게 변화했는지
  3. 메시지 - 개발자가 HTTP 메세지를 온전히 작성하는 경우는 거의 없음 API나 다른 인터페이스가 대신 작성해준다.
  4. 헤더 - 본인의 개발에 필요한 헤더들, 빈번하게 사용되는 헤더들 부터 알자.
  5. 메서드 - GET, POST, PUT….
  6. Cross-Origin Resource Sharing (CORS)
  7. 쿠키
  8. 리다이렉트
  9. 응답 상태 코드 - 달달 외울 필요는 없다. 필요한 것부터 알면 된다.

필요한 때가되면 알자


  1. 보안 - CSP, HSTS, X-Content-Type-Options 등…
  2. 인증 - Authorization 관련 HTTP 헤더
  3. 캐싱 - Cache 관련 헤더
  4. 압축 - 실제 웹 개발자들은 압축 메커니즘을 구현할 필요는 없고, 브라우저와 서버가 그것들을 이미 구현하고 있다. 압축이 잘 되고 있는지만 확인해 보면 된다.

추가적으로 알면 좋은것


  1. 조건부 요청, 범위 요청 - 캐싱 및 다운로드, 대형 미디어(스트리밍)과 같은 것을 구현할때
  2. 컨텐츠 협상 - 특별히 뭘 작성하지 않아도 RESTful API등을 사용하면 JSON으로 응답이 오는 이유를 알 수 있다.

더 이상 알 필요 없음


  1. HTTP/1.1 에서의 파이프라이닝 (HTTP/2 에서는 멀티플렉싱으로 대체)
  2. 도메인 샤딩 - Deprecated, HTTP/2 연결은 우선 순위가 없는 병렬 요청을 알아서 잘 처리한다.

아래는 추가적으로 HTTP를 아는데 도움이 될만한 문서들이다. 이후 추가 될수 있음😊

만화로 보는 HOW HTTPS WORKS
HTTP3 From A To Z: 핵심 개념