섹션 4. HTTP 메서드
2024. 7. 13. 21:39ㆍSpring/HTTP 웹 기본 지식
반응형
❓ HTTP API를 만들어보자
회원 정보 관리 API 예시
- 회원 목록 조회 /members
- 회원 조회 /members/{id}
- 회원 등록 /members/{id}
- 회원 수정 /members/{id}
- 회원 삭제 /members/{id}
❓ HTTP 메서드 - GET, POST, PUT, PATCH, DELETE
GET
- 리소스 조회
- 서버에 전달하고 싶은 데이터는 query(쿼리 파라미터)를 통해서 전달
- 메세지 바디를 사용해서 전달할 수 있지만, 권장하지 않음
POST
- 요청 데이터 처리
- 메세지 바디를 통해 서버로 요청 데이터 전달
- 서버는 요청 데이터를 처리
- 메세지 바디를 통해 들어온 데이터를 처리하는 모든 기능 수행
- 주로 전달된 데이터로 신규 리소스 등록, 프로세스 처리에 사용
PUT
- 리소스를 대체
- 리소스가 있으면 대체
- 리소스가 없으면 생성
- 덮어버림 처리
- POST 와의 차이점은 리소스 위치를 알고 있음
PATCH
- 리소스 부분 변경 (우리가 알고 있는 수정 기능)
DELETE
- 리소스 삭제
❓ HTTP 메서드의 속성
- 안전(Safe Methods)
- 호출해도 리소스를 변경하지 않는다
- 멱등(Idempotent Methods)
- 한 번 호출하든 두번 호출하든 결과가 똑같다.
- 멱등 메서드
- GET : 결과 동일
- PUT : 결과를 대체한다. 따라서 최종 결과 동일
- DELETE : 결과를 삭제한다. 따라서 삭제된 결과는 동일
- POST : 중복해서 발생할 수 있음
- 캐시가능(Cacheable Methods)
- GET, POST, PATCH 캐시 가능
- 실제로는 GET 정도만 캐시로 사용
- POST, PATCH는 본문 내용까지 캐시 키로 고려해야 하는데, 쉽지 않음
강의 출처
반응형