택시짱의 개발 노트

4장. HTTP의 구조 및 핵심 요소 본문

책 읽고 정리/깔끔한 파이썬 탄탄한 백엔드

4장. HTTP의 구조 및 핵심 요소

택시짱 2020. 10. 25. 15:44

- HTTP 통신은 요청과 응답으로 이루어져 있다. 클라이언트가 HTTP 요청을 보내면 서버는 해당 요청에 대한 응답을 보내는 것이 하나의 HTTP 통신이다.

 

- HTTP 통신은 stateless다. 클라이언트와 서버는 HTTP 통신을 여러 번 주고받는 것이 일반적인데, HTTP 프로토콜에서는 동일한 클라이언트와 서버가 주고받은 HTTP 통신들이라도 서로 연결되어 있지 않다. 즉, 각각의 HTTP 통신은 독립적이며, 그 전에 처리된 HTTP 통신에 대해서 전혀 알지 못한다.

 

- HTTP 요청 메시지는 크게 다음 세 부분으로 구성되어 있다.

    - Start line

    - Header

    - Body

 

- HTTP 응답 메시지도 세 부분으로 구성되어 있다.

    - Status line

    - Header

    - Body

 

- 자주 사용되는 HTTP 메소드에는 GET, POST, OPTIONS, PUT, DELETE 등이 있다.

 

- 자주 사용되는 HTTP 응답 코드와 응답 텍스트에는 200 OK, 301 Moved Permanently, 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 500 Internal Server Error 등이 있다.

 

- API 엔드포인트 아키텍처 패턴 중 가장 널리 사용되는 패턴은 REST다. REST는 엔드포인트의 고유 주소(URI)와 허용되는 HTTP 메소드를 통해서 제공하는 리소스와 기능을 알 수 있게 해 줌으로써 클라이언트가 API를 더 쉽게 이해하고 사용할 수 있게 해준다.

 

- GraphQL은 REST 방식의 API를 구현할 때 생기는 문제를 해결하기 위해 만들어진 기술로, REST보다 더 유연한 엔드포인트 구조를 구현할 수 있지만, REST보다는 아직 널리 사용되고 있지 않다.

반응형
Comments