24.12.17 TIL HTTP Method

신성훈·2024년 12월 17일

TIL

목록 보기
101/162

HTTP Method

HTTP 메서드는 클라이언트가 서버에 요청을 보낼 때 사용하는 동작(작업)의 유형을 정의합니다. 각각의 메서드는 특정한 목적을 가지고 있으며, RESTful API 설계에서 중요한 역할을 합니다.


주요 HTTP 메서드

1. GET

  • 목적: 리소스를 조회
  • 특징:
    • 서버에서 데이터를 가져옴
    • 데이터 변경 없음 (Idempotent)
    • 요청 URI에 필요한 정보를 포함할 수 있음 (쿼리 파라미터)
  • 예시:
    GET /users/1
    → ID가 1인 사용자 정보를 조회

2. POST

  • 목적: 리소스를 생성
  • 특징:
    • 서버에 새로운 데이터를 추가
    • 요청 본문(Body)에 데이터 포함
  • 예시:
    POST /users
    Body: {
      "name": "Alice",
      "age": 25
    }
    → 새로운 사용자 정보 추가

3. PUT

  • 목적: 리소스를 전체 수정
  • 특징:
    • 리소스의 내용을 완전히 대체
    • 요청 본문에 수정할 전체 데이터 포함
  • 예시:
    PUT /users/1
    Body: {
      "name": "Alice",
      "age": 30
    }
    → ID가 1인 사용자 정보 전체 수정.

4. PATCH

  • 목적: 리소스를 부분 수정
  • 특징:
    • 리소스의 일부 속성만 수정
    • 요청 본문에 수정할 데이터만 포함
  • 예시:
    PATCH /users/1
    Body: {
      "age": 30
    }
    → ID가 1인 사용자의 나이만 수정 -> 하지만 잘 사용 하지 않음

5. DELETE

  • 목적: 리소스를 삭제
  • 특징:
    • 서버에서 리소스를 제거
  • 예시:
    DELETE /users/1
    → ID가 1인 사용자 정보 삭제

기타 HTTP 메서드

  • HEAD: GET과 동일하지만 응답 본문(Body)을 반환하지 않음
  • OPTIONS: 특정 URL에서 사용할 수 있는 HTTP 메서드 목록 반환
  • TRACE: 클라이언트에서 보낸 요청을 그대로 반환하여 디버깅에 사용
  • CONNECT: 프록시 서버에 터널을 설정하여 HTTPS 요청에 사용

RESTful 설계와 HTTP 메서드

RESTful API는 HTTP 메서드를 적절히 활용하여 리소스의 상태를 처리합니다.

  • GET: 조회
  • POST: 생성
  • PUT: 전체 수정
  • PATCH: 부분 수정
  • DELETE: 삭제

마무리

  • HTTP 메서드를 적절히 사용하면 클라이언트와 서버 간의 명확한 데이터 처리 규약을 설정할 수 있음을 알게 되었습니다.
  • 처음에는 PUT과 PATCH의 차이를 이해하기 어려웠지만, 사용 사례를 비교하며 익혔습니다.
  • 실제 API 설계 시 HTTP 메서드를 올바르게 매핑하는 것이 중요하다는 점을 배웠습니다.
profile
조급해하지 말고, 흐름을 만들고, 기록하면서 쌓아가자.

0개의 댓글