HTTP Methods
클라이언트가 서버에 특정 작업을 요청하기 위해 사용하는 방식
멱등(冪等性, Idempotency)
- 수학과 컴퓨터 과학에서 연산을 여러 번 적용하더라도 결과가 달라지지 않는 성질을 의미
- 동일한 연산을 반복 수행해도 처음 수행한 것과 동일한 결과를 얻을 수 있는 특성
메서드 | 목적 | 요청 본문 | 안전 | 멱등 | 캐시 가능 | 주요 특징 | 일반적인 응답 코드 | 사용 예시 |
---|---|---|---|---|---|---|---|---|
GET | 리소스 조회 | 없음 | O | O | O | URI에 쿼리 파라미터 포함 가능 | 200 OK | GET /users?id=1 |
POST | 리소스 생성 및 처리 | 있음 | X | X | 조건부 | 서버의 상태를 변경하며, 새 리소스의 URI를 반환할 수 있음 | 201 Created | POST /users |
PUT | 리소스 전체 생성 또는 수정 | 있음 | X | O | X | 지정된 URI에 리소스가 없으면 생성하고, 있으면 대체함 | 200 OK, 201 Created | PUT /users/1 |
PATCH | 리소스 부분 수정 | 있음 | X | 조건부 | X | 리소스의 일부만 업데이트, 구현에 따라 멱등할 수 있음 | 200 OK, 204 No Content | PATCH /users/1 |
DELETE | 리소스 삭제 | 선택적 | X | O | X | 성공 시 대개 204 No Content 반환 | 204 No Content | DELETE /users/1 |
HEAD | 헤더 정보 조회 | 없음 | O | O | O | GET과 동일하나 본문 제외 | 200 OK | HEAD /users |
OPTIONS | 통신 옵션 조회 | 없음 | O | O | X | 대상 리소스가 지원하는 메서드 목록을 반환하며, CORS에서 중요한 역할을 함 | 200 OK | OPTIONS /users |
TRACE | 루프백 테스트 | 없음 | O | O | X | 요청을 그대로 반환하여 경로를 따라가는 테스트를 수행하며, 보안상 비활성화되는 경우가 많음 | 200 OK | TRACE /debug |
CONNECT | 프록시 연결 수립 | 없음 | X | X | X | 프록시 서버를 통해 터널을 설정하여 SSL/TLS 등의 프로토콜을 사용한 통신에 활용됨 | 200 OK | CONNECT http://www.example.com:443/ |