1. 메시지 전달 방식
종류 | 설명 |
Query parameter | - GET 메서드가 해당된다. - 주로 게시판 목록의 정렬 필터, 검색 등에 사용된다. |
Message body | - POST, PUT, PATCH 메서드가 해당된다. - 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 등에 사용된다. |
2. 메시지 전달 상황
종류 | 설명 |
정적 데이터 조회 | - 일반적으로 쿼리 파라미터 없이 리소스 경로로 단순하게 조회 가능하다. - GET을 사용한다. - 이미지, 정적 텍스트 문서 등을 조회하는 경우가 해당된다. |
동적 데이터 조회 | - 쿼리 파라미터를 사용해서 데이터를 전달한다. - GET을 사용한다. - 주로 게시판 목록의 정렬 필터, 검색 등에 사용된다. |
HTML Form을 통한 데이터 전송 | - GET, POST를 사용한다. - 회원 가입, 상품 주문, 데이터 변경 등에 사용된다. |
HTTP API를 통한 데이터 전송 | - GET: 조회, 쿼리 파라미터로 데이터를 전달한다. - POST, PUT, PATCH: 메시지 바디를 통해 데이터를 전송한다. - Content-Type: application/json을 사용한다. - 회원 가입, 상품 주문, 데이터 변경 등에 사용된다. - 서버 간 데이터를 전송하거나 앱 클라이언트, 웹 클라이언트 등에서 사용된다. |
2.1 HTML Form을 통한 데이터 전송
종류 | 설명 |
POST 전송 | - Content-Type: application/x-www-form-urlencoded를 사용한다. - form의 내용을 key=value 혹은 쿼리 파라미터 형식을 이용해 메시지 바디를 통해서 전송한다. - 전송 데이터를 uril encoding 처리한다. |
GET 전송 | - Content-Type: multipart/form-data를 사용한다. - 파일 업로드 같은 바이너리 데이터 전송 시 사용한다. - 다른 종류의 여러 파일과 폼의 내용을 함께 전송할 수 있다. 그래서 이름이 multipart이다. |
참고
- 『모든 개발자를 위한 HTTP 웹 기본 지식』
'Network' 카테고리의 다른 글
HTTP Persistent Connection (0) | 2021.11.26 |
---|---|
REST API 설계 원칙 (0) | 2021.11.09 |
HTTP Message (0) | 2021.11.09 |
HTTP (0) | 2021.10.27 |
웹 브라우저에서 서버까지의 요청 흐름 (0) | 2021.10.27 |