GET
: 리소스 조회
POST
: 요청 데이터 처리, 주로 등록에 사용
PUT
: 리소스를 대체, 해당 리소스가 없으면 생성
PATCH
: 리소스 부분 변경
DELETE
: 리소스 삭제
HEAD
: GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환
OPTIONS
: 대상 리소스에 대한 통신 가능 옵션(메소드)을 설명(주로 CORS에서 사용)
GET /members/100 HTTP/1.1
Host: localhost:8080
HTTP/1.1 200 OK
Content-Type: application.json
Content-Length: 34
{
"username": "young",
"age": 20
}
POST /members HTTP/1.1
Content-Type: application.json
{
"username": "young",
"age": 20
}
HTTP/1.1 201 Created
Content-Type: application.json
Content-Length: 34
Location: /members/100
{
"username": "young",
"age": 20
}
POST /members/100 HTTP/1.1
Content-Type: application.json
{
"username": "old",
"age": 50
}
주의!
만약 필드를 중간에 빼먹고 보내면 기존에 있던 데이터가 완전히 달라질 수 있다! 나이만 바꾸고 싶다고 해서 아래처럼 보내면 기존에 있던username
은 사라진다. 이럴 때는 PATCH 를 사용해야 한다.
POST /members/100 HTTP/1.1
Content-Type: application.json
{
"age": 50
}
PATCH /members/100 HTTP/1.1
Content-Type: application.json
{
"age": 50
}
DELETE /members/100 HTTP/1.1
Host: localhost:8080