[CS] REST API, RESTful API

손경이·2024년 4월 19일
0

CS Study

목록 보기
11/25

REST API, RESTful API


HTTP 요청을 보낼 때 어떤 URI에 어떤 HTTP 메서드를 사용할지 개발자들 사이에 널리 지켜지는 약속


> API(Application Programming Interface)

  • 애플리케이션에서 데이터를 읽거나 쓰기 위해 사용하는 인터페이스

**여기서 말하는 인터페이스는 쉽게 말해서 클라이언트와 서버 사이에 상호작용하기 위한 소통창구


> REST API

  • REST 기반으로 서비스 API를 구현한 것
  • REST(REpresentational State Transfer)
    • 자원(URI)의 표현으로 상태(정보)를 주고받는 것
    • 자원의 행동을 HTTP method로 표현
  • RESTful
    • REST라는 원리를 잘 따르는 시스템
    • 자원을 URI로 표현했고 행동에 맞는 적절한 HTTP method를 사용한 것

** URI란 자원을 구조와 함께 나타내는 이런 형태의 구분자


> REST API 특성

  • 각 요청이 어떤 동작이나 정보를 위한 것인지를 그 요청의 모습 자체로 추론이 가능
  • RESTful하게 만든 API는 요청을 보내는 주소만으로도 대략 이게 뭘 하는 요청인지 파악 가능

> REST API 규칙

  • URI는 동사가 아닌 명사로 이뤄져야 함
    • 리소스를 식별할 때는 URI를 통해서 식별
  • 어떤 행위를 할 때는 POST, GET, DELETE, PUT과 같이 HTTP 고유한 methods 코드로 요청
  • 클라이언트에 결과를 알려줄 때는 응답코드를 정확하게 사용하는 것을 통해서 결과를 알려줌

  • 서버에 REST API로 요청을 보낼 때 HTTP 규약에 따라 신호를 전송
    • GET은 데이터를 조회하는 데 사용
    • POST는 새로운 정보를 추가하는 데 사용
    • PUT(통째로 변경), PATCH(일부 변경)를 정보를 변경할 때 사용
    • DELETE 정보를 삭제할 때 사용


> REST API 장점

  • 훨씬 빠르게 API 구조를 이해할 수 있음
  • 이해하기 쉽고 활용도가 높음

참고

0개의 댓글