HTTP 동사

본 REST API에서 사용하는 HTTP 동사(verbs)는 가능한한 표준 HTTP와 REST 규약을 따릅니다.

동사 용례

GET

리소스를 가져올 때 사용

POST

새 리소스를 만들 때 사용

PUT

기존 리소스를 수정할 때 사용

PATCH

기존 리소스의 일부를 수정할 때 사용

DELETE

기존 리소스를 삭제할 떄 사용

HTTP 상태 코드

본 REST API에서 사용하는 HTTP 상태 코드는 가능한 표준 HTTP와 REST 규약을 따릅니다.

상태 코드 용례

200 OK

요청을 성공적으로 처리함

201 Created

새 리소스를 성공적으로 생성함. 응답의 Location 헤더에 해당 리소스의 URI가 담겨있다.

204 No Content

기존 리소스를 성공적으로 수정함.

400 Bad Request

잘못된 요청을 보낸 경우. 응답 본문에 더 오류에 대한 정보가 담겨있다.

404 Not Found

요청한 리소스가 없음.

409 Conflict

클라이언트의 요청이 서버의 상태와 충돌이 발생한 경우.

snippets 작성 컨벤션

domain-httpRequestCode-etc

상품

상품 조회

Curl request

$ curl 'http://127.0.0.1:8001/item/1' -i -X GET

HTTP request

GET /item/1 HTTP/1.1
Host: 127.0.0.1:8001

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 146

{
  "code" : "SUCCESS",
  "message" : "",
  "data" : {
    "id" : 1,
    "name" : "아메리카노",
    "salesYn" : "Y",
    "price" : 1500
  }
}

Path parameters

Table 1. /item/{itemId}
Parameter Description

itemId

상품 고유 번호

Response fields

Path Type Description

code

String

결과 코드 SUCCESS/ERROR

message

String

메시지

data.id

Number

상품 고유 번호

data.name

String

상품 이름

data.salesYn

String

화면 표시 여부 Y/N

data.price

Number

상품 가격

상품 조회 (존재하지 않는 상품)

Curl request

$ curl 'http://127.0.0.1:8001/item/9999' -i -X GET

HTTP request

GET /item/9999 HTTP/1.1
Host: 127.0.0.1:8001

HTTP response

HTTP/1.1 409 Conflict
Content-Type: application/json
Content-Length: 93

{
  "code" : "ERROR",
  "message" : "존재하지 않는 상품입니다.",
  "data" : null
}

Path parameters

Table 1. /item/{itemId}
Parameter Description

itemId

상품 고유 번호

Response fields

Path Type Description

code

String

결과 코드 SUCCESS/ERROR

message

String

메시지

data

Null

데이터