HTTP의 주요 메소드에는 5가지 종류가 있다.
- GET
- POST
- PUT
- PATCH
- DELETE
- GET
- 리소스 조회
- 서버에 전달하고 싶은 데이터는 query를 통해서 전달
- POST
- 요청 데이터 처리
- 메세지 바디를 통해 서버로 요청 데이터 전달
- 서버는 요청 데이터를 처리
- 주로 신규 리소스 등록, 프로세스 처리에 사용
- 리소스 URI에 POST요청이 오면 요청 데이터를 어떻게 처리할 지 리소스마다 따로 정해야 함 → 정해진 것이 없음
- PUT
- 리소스를 대체
- 리소스가 있으면 대체
- 리소스가 없으면 생성
- 클라이언트가 리소스를 식별 (아래 예시에서 Collection, Store 내용 참고)
- 클라이언트가 리소스 위치를 알고 URI 지정
- POST와의 차이점 !
- 리소스를 대체
- PATCH
- 리소스 부분 변경
- DELETE
- 리소스 제거
HTTP API 설계 예시
- POST 기반 등록
- 회원 목록 : /members → GET
- 회원 등록 : /members → POST
- 회원 조회 : /members/{id} → GET
- 회원 수정 : /members/{id} → PATCH, PUT, POST
- 회원 삭제 : /members/{id} → DELETE
- 클라이언트는 등록될 리소스의 URI를 모른다.
- 서버가 새로 등록된 리소스 URI를 생성해준다.
- 컬렉션(Collection)
- 서버가 관리하는 리소스 디렉토리
- 서버가 리소스의 URI를 생성하고 관리
- 여기서 컬렉션은 /members
- 대부분 컬렉션 사용
- PUT 기반 등록
- 파일 목록 : /files → GET
- 파일 조회 : /files/{filename} → GET
- 파일 등록 : /files/{filename} → PUT
- 파일 삭제 : /files{filename} → DELETE
- 파일 대량 등록 : /files → POST
- 클라이언트가 리소스 URI를 알고 있어야 한다.
- 파일 등록 : /files/{filename} → PUT
- PUT /files/star.jpg
- 클라이언트가 직접 리소스의 URI를 지정한다.
- 스토어(Store)
- 클라이언트가 관리하는 리소스 저장소
- 클라이언트가 리소스의 URI를 알고 관리
- 여기서 스토어는 /files
- 스토어는 거의 사용되지 않음
모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의
실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런...
www.inflearn.com
기본을 탄탄히..! 졸려잉..
'HTTP' 카테고리의 다른 글
“www.google.com” 을 입력하면 무슨 일이 일어날까? (TCP/IP) (6) | 2023.02.23 |
---|---|
HTTP의 특징 : Stateless와 connectionless를 살펴보자 (0) | 2023.01.27 |
웹 브라우저 요청 흐름을 따라가보자 (4) | 2023.01.26 |
구글 URL을 해석해보자! (https://www.google.com:443/search?q=hello&hl=ko) (2) | 2023.01.26 |
TCP, UDP 차이 (0) | 2023.01.25 |