Web/HTTP
HTTP 메서드
Jinn
2023. 10. 9. 02:33
주요 메서드
GET
리소스 조회
서버에 전달할 데이터는 query(쿼리 파라미터, 쿼리 스트링)를 통해서 전달
바디를 통해 데이터를 전달할 수 있지만 권장하지 않음(지원하지 않는 서버가 많음)
POST
요청 데이터 처리
바디를 통해 데이터를 전달
주로 새로운 리소스 등록(생성), 프로세스 처리에 사용
클라이언트는 /members에 리소스 생성 요청
서버가 /members/100에 리소스 생성. Response의 Location으로 알려줌
PUT
리소스를 대체(덮어쓰기)
해당 리소스가 없으면 생성
클라이언트가 리소스 위치를 알고 URI 지정 (POST와 차이점)
예: PUT /files가 아닌 PUT /files/car.jpg로 리소스의 URI를 지정
PATCH
리소스 부분 변경
DELETE
리소스 삭제
기타 메서드
HEAD
GET과 동일하지만 메시지 부분을 제외하고 상태와 헤더만 반환
OPTIONS
리소스에 대한 통신 가능 옵션을 설명
CONNECT
리소스로 식별되는 서버에 대한 터널을 설정
TRACE
리소스에 대한 경로를 따라 메시지 루프백 테스트를 수행
- 안전
호출해도 리소스를 변경하지 않음
- 멱등
f(f(x)) = f(x)
몇 번을 호출하든 결과가 똑같음
외부 요인으로 중간에 리소스가 변경되는 것은 고려하지 않음 (예: get -> put -> get)