Web

REST API

잔망루피 2021. 7. 24. 11:33

1. HTTP Method

  • GET  데이터 조회
  • POST  새로운 데이터 추가
  • PUT  데이터 전체 수정
  • PATCH  데이터 일부 수정
  • DELETE  정보 삭제
  • OPTIONS 제공 가능한 API 메소드를 반환
  • HEAD Header 정보만 응답

 

2. REST API의 자원 표현을 위한 URL 설계 규칙

  1. 소문자만 사용
  2. 하이픈(-)은 사용하지 않고 밑줄(_) 사용
  3. 확장자 표시 X
  4. 마지막에 /를 포함하지 않는다.
  5. method는 포함하지 않는다.(get/post/put/delete/head/connect/options/trace/patch)
  6. 컨트롤 리소스를 의미하는 URL은 예외적으로 동사 허용

 

🌿 Rest API 예시

방식 HTTP 메서드 URI
CREATE POST /users
READ GET /users/1
UPDATE PUT /users/1
DELETE DELETE /users/1

 

🌿 성공 응답

  • 200 : OK
  • 201 : Created
    • POST, PUT에 사용
  • 202 : Accepted
    • 요청은 유효하지만 서버가 아직 처리하지 않은 경우
  • 204 : No Content
    • DELETE에 사용

 

🌿 실패 응답

  • 400 : Bad Request
    • 클라이언트 요청이 파라미터 요구사항을 위반
  • 401 : Unauthorized
  • 403 : Forbidden
    • 접근이 허용되지 않음
  • 404 : Not Found
  • 405 : Method Not Allowed
    • HTTP header에 허용 가능한 method를 표시해야 한다.
    • POST /user/1과 같은 경우에 발생
  • 409 : Conflict
    • 비즈니스 로직에서 문제가 생김
  • 429 : Too Many Requests
    • 요청의 수 제한

 

 

참고 👇

https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods

 

HTTP request methods - HTTP | MDN

HTTP defines a set of request methods to indicate the desired action to be performed for a given resource. Although they can also be nouns, these request methods are sometimes referred to as HTTP verbs. Each of them implements a different semantic, but som

developer.mozilla.org

 

https://library.gabia.com/contents/8339/

 

가비아 라이브러리

IT 콘텐츠 허브

library.gabia.com

 

반응형

'Web' 카테고리의 다른 글

CORS  (0) 2022.10.07
CSRF  (0) 2022.09.15
[Error] Request method 'DELETE' not supported  (0) 2022.06.04
get과 post 차이  (0) 2022.02.18
URL과 URI  (0) 2021.09.13