여니의 성장 diary
728x90
반응형

RESTful API (Representational State Transferful API)

  • Representational State Transfer(REST) 아키테처 원칙을 따르는 웹 서비스의 한 방식
  • 자원을 URI로 표현하고 HTTP 메서드를 통해 해당 자원을 조작하는 방식으로 동작
  • 간결하고 확장 가능하며, 다양한 클라이언트와 서버 간의 상호작용을 용이하게 만드는 목적

 

RESTful API의 주요 개념 및 특징

자원 (Resource)

  • API에서 제공하는 모든 것을 자원으로 표현
  • 예: 사용자, 제품, 주문

URI(Uniform Resource Identifier)

  • 각 자원은 고유한 URI로 식별
  • RESTful API에서는 리소스의 표현이 URI에 의해 결정됨

HTTP 메서드(HTTP Methods)

  • 자원에 대한 특정한 동작을 수행하는 메서드
  • 주요 HTTP 메서드 : GET, POST, PUT, PATCH, DELETE 등

표현 (Representation)

  • 자원의 상태를 나타내는 표현
  • 일반적으로 JSON 또는 XML 형식으로 표현

 

HTTP 메서드와 URI 설계

GET (조회)

  • URI : ' /users/{id} '
  • 특정 사용자의 정보를 조회

POST (생성)

  • URI : ' /users '
  • 새로운 사용자 생성

PUT (전체 갱신)

  • URI : ' /users/{id} '
  • 특정 사용자의 정보를 완전히 갱신

PATCH (부분 갱신)

  • URI : ' /users/{id} '
  • 특정 사용자의 일부 정보만 갱신

DELETE (삭제)

  • URI : ' /users/{id} '
  • 특정 사용자 삭제

 

상태코드(HTTP Status Codes)

2xx (성공)

  • 200 OK : 성공적으로 요청을 처리함
  • 201 Created : 자원의 생성이 성공함
  • 204 No Content : 응답 본문이 없음

3xx (리다이렉션)

  • 301 Moved permanently : 리소스가 새로운 위치로 이동함
  • 304 Not Modified : 캐시를 사용하고, 리소스가 수정되지 않음

4xx (클라이언트 오류)

  • 400 Bad Request : 잘못된 요청 형식 등의 클라이언트 오류
  • 401 Unauthorized : 인증이 필요함
  • 404 Not Found : 요청한 리소스가 없음

5xx (서버 오류)

  • 500 Internal Server Error : 서버 내부 오류

 

이러한 HTTP 메서드, URI 설계, 상태 코드를 적절하게 활용하여 자원을 표현하고 다루며,

이를 통해 클라이언트와 서버 간의 통신이 효율적이며 일관된 인터페이스 제공 가능

728x90
반응형
profile

여니의 성장 diary

@pponyo

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!