HTTP 메서드란?
- 클라이언트와 서버 간의 통신에서 사용되는 일종의 규약입니다. 각 메서드는 특정한 작업을 수행하며, RESTful 서비스에서 리소스 조작을 위해 주로 사용됩니다. HTTP 메서드는 CRUD(Create, Read, Update, Delete) 기능을 제공합니다.
1. GET - 서버에서 리소스를 조회.
* 안전성: 서버 상태를 변경하지 않는다.
* 멱등성: 동일한 요청을 여러 번 수행해도 결과가 동일.
* 캐싱: GET 요청은 캐싱할 수 있다.
2. POST - 서버에 새로운 리소스를 생성.
* 안전성: 서버 상태를 변경.
* 멱등성: 동일한 요청을 여러 번 수행하면 여러 개의 리소스가 생성될 수 있음.
* 캐싱: 일반적으로 캐싱하지 않음.
3. PUT - 서버의 기존 리소스를 업데이트합. 주로 전체 수정.
* 안전성: 서버 상태를 변경.
* 멱등성: 동일한 요청을 여러 번 수행해도 결과가 동일.
* 캐싱: 캐싱할 수 있음.
4. PATCH - 서버의 기존 리소스를 부분적으로 업데이트.
* 안전성: 서버 상태를 변경.
* 멱등성: 동일한 요청을 여러 번 수행해도 결과가 동일.
* 캐싱: 일반적으로 캐싱하지 않음.
5. DELETE - 서버에서 리소스를 삭제.
* 안전성: 서버 상태를 변경.
* 멱등성: 동일한 요청을 여러 번 수행해도 결과가 동일.
* 캐싱: 일반적으로 캐싱하지 않음.
6. HEAD - GET 요청과 동일하지만, 응답 본문을 포함하지 않음. 리소스의 메타데이터(헤더)만 반환.
* 안전성: 서버 상태를 변경하지 않음.
* 멱등성: 동일한 요청을 여러 번 수행해도 결과가 동일.
* 캐싱: 캐싱할 수 있다.
7. OPTIONS - 서버가 지원하는 HTTP 메서드를 확인.
* 안전성: 서버 상태를 변경하지 않음.
* 멱등성: 동일한 요청을 여러 번 수행해도 결과가 동일.
8. TRACE - 요청이 서버에 도달하는 과정을 추적.
* 안전성: 서버 상태를 변경하지 않음.
* 멱등성: 동일한 요청을 여러 번 수행해도 결과가 동일.
기본적인 기능에 관해서는 많은 분들이 아실 것 같아서 안정성과 멱등성, 캐싱의 관점에서도 한 번 정리해 보았습니다!
'스프링 > 개념' 카테고리의 다른 글
Spring 예외처리 기본 원리와 어노테이션 (0) | 2024.09.09 |
---|---|
계층형 패키지 구조 vs 도메인형 패키지 구조 (0) | 2024.09.09 |
HTTP 상태 코드 정리 (0) | 2024.09.09 |
REST API 설계 규칙! (0) | 2024.09.09 |
RestFul 에 관하여 (0) | 2024.09.09 |