콘텐츠로 이동

HTTP Method

URL을 통해 어디에 요청을 보낼지 정했다면, 이제 그 대상에 무엇을 요청할지 정해야 합니다. 예를 들어 같은 /posts 경로에 요청하더라도, 클라이언트는 게시글 목록을 조회할 수도 있고, 새로운 게시글을 작성할 수도 있습니다.

이처럼 클라이언트가 서버에 원하는 동작을 알리는 값을 HTTP Method라고 합니다. HTTP Method는 요청 메시지의 시작줄 가장 앞에 들어갑니다.

GET /posts HTTP/1.1

위 예시의 GET이 HTTP Method입니다. 서버는 GET과 /posts를 함께 보고, 게시글 목록을 조회하는 요청인지 판단합니다.

CRUD

웹 서비스에서 데이터를 다룰 때는 생성, 조회, 수정, 삭제 작업을 자주 수행합니다. 데이터에 대해 일반적으로 수행하는 네 가지 기본 작업의 영어 앞글자를 따서 보통 CRUD라고 합니다.

  • Create: 데이터 생성
  • Read: 데이터 조회
  • Update: 데이터 수정
  • Delete: 데이터 삭제

예를 들어 게시판 서비스에서는 새 게시글을 작성하고(Create), 게시글을 읽고(Read), 내용을 수정하고(Update), 삭제하는(Delete) 작업이 CRUD에 해당합니다. HTTP Method는 이런 작업을 나타낼 때 사용합니다.

CRUD는 데이터에 어떤 작업을 수행하는지 설명하는 개념이고, HTTP Method는 그 작업을 HTTP 요청 메시지로 표현할 때 실제 사용하는 값입니다.

주요 HTTP Method

웹 서비스에서 자주 사용하는 HTTP Method는 다음과 같습니다.

Method 의미 예시
GET 데이터를 조회합니다. 게시글 목록 보기
POST 새 데이터를 만들거나, 서버에 작업을 요청합니다. 새 게시글 작성
PUT 데이터를 전체적으로 변경합니다. 게시글 전체 수정
PATCH 데이터의 일부를 변경합니다. 게시글 제목만 수정
DELETE 데이터를 삭제합니다. 게시글 삭제

같은 경로라도 HTTP Method가 다르면 서버는 서로 다른 작업으로 인식합니다.

  • GET /posts/1 → 1번 게시글 조회
  • PATCH /posts/1 → 1번 게시글 일부 수정
  • DELETE /posts/1 → 1번 게시글 삭제

URL & HTTP Method

URL은 요청할 대상을, HTTP Method는 그 대상에 요청할 동작을 나타냅니다. 하나의 HTTP 요청은 보통 다음 두 가지 정보를 함께 전달합니다.

  • 어디에 요청할까? → URL 경로
  • 무엇을 요청할까? → HTTP Method

실습 과제

다음 문장이 맞으면 O, 틀리면 X를 선택하세요.

  1. HTTP Method는 클라이언트가 서버에 원하는 동작을 알리는 값이다.
  2. 같은 URL에 요청하더라도 HTTP Method가 다르면 서버는 서로 다른 작업을 처리할 수 있다.
  3. PATCH /posts/1은 1번 게시글의 일부를 수정하는 요청을 표현할 수 있다.
정답·해설
  1. O — HTTP Method는 조회, 생성, 수정, 삭제처럼 클라이언트가 원하는 동작을 나타냅니다.
  2. O — URL은 대상, HTTP Method는 동작을 나타내므로 둘을 조합해 서로 다른 요청을 만들 수 있습니다.
  3. O — PATCH는 데이터의 일부를 수정할 때 주로 사용하는 HTTP Method입니다.