[CS] HTTP 메서드 - GET, POST, PUT, DELETE 등

김민아·2025년 1월 21일

CS

목록 보기
7/8
post-thumbnail

1. 정의

  • HTTP 메서드는 웹 클라이언트(브라우저나 애플리케이션)와 서버 간의 통신에서 특정 작업을 요청하기 위해 사용되는 프로토콜의 일부분입니다. 주로 리소스를 생성, 읽기, 수정, 삭제(CRUD 작업)하는 데 사용되며 주요 메서드는 아래와 같습니다.

2. GET

  • 목적 : 서버에서 데이터를 요청하여 가져옵니다.
  • 특징 : 데이터 조회만 수행하며 서버 상태를 변경하지 않습니다. 요청 URL에 데이터를 쿼리 문자열로 포함 (?key=value)하며 캐싱이 가능합니다.
  • 예 : 특정 게시글 보기 (GET /posts/123), 검색 결과 가져오기 (GET /search?q=example).

3. POST

  • 목적 : 서버에 데이터를 생성하거나 전송합니다.
  • 특징 : 요청 본문에 데이터를 포함합니다. 서버 상태를 변경합니다(새 리소스 생성 등). 캐싱되지 않습니다.
  • 예 : 회원가입 (POST /users), 댓글 작성 (POST /posts/123/comments).

4. PUT

  • 목적 : 특정 리소스를 생성하거나 전체 데이터를 대체합니다.
  • 특징 : 요청 본문에 데이터를 포함하여 기존 리소스를 완전히 대체합니다. 대상 리소스가 존재하지 않으면 새로 생성합니다.
  • 예 : 사용자 프로필 업데이트 (PUT /users/123).

5. DELETE

  • 목적 : 특정 리소스를 삭제합니다.
  • 특징 : 서버에서 리소스를 제거합니다. 일반적으로 본문에 데이터가 포함되지 않습니다.
  • 예 : 게시글 삭제 (DELETE /posts/123).

6. PATCH

  • 목적 : 리소스의 일부를 수정합니다.
  • 특징 : PUT과 유사하지만 일부 속성만 변경합니다. 요청 본문에 수정할 데이터만 포함합니다.
  • 예 : 비밀번호 변경 (PATCH /users/123/password).

7. HEAD

  • 목적 : GET 요청과 동일하지만, 응답 본문 없이 헤더만 반환합니다.
  • 특징 : 리소스의 메타데이터만 확인합니다. 캐싱 유효성 검사, 상태 확인에 유용합니다.
  • 예: 리소스 존재 여부 확인 (HEAD /image.jpg).

8. OPTIONS

  • 목적 : 서버가 지원하는 메서드를 확인합니다.
  • 특징 : 사전 요청(Preflight request)에 사용합니다.
  • 예 : 특정 리소스에 대해 가능한 작업 확인.

9. TRACE

  • 목적 : 요청 경로를 테스트하고 디버깅합니다.
  • 특징 : 보안상 위험으로 일반적으로 비활성화.
  • 예 : 네트워크 경로 디버깅.
profile
안녕하세요.

0개의 댓글