REST API!

  • REST API(Representational state transfer)
  • ROA (Resources Oriented Architecture) 개념의 기술

무엇?

  • HTTP 통신에서 어떤 resource에 대한 CRUD 요청을 Resource(URI), Method(GET, PUT, POST, DELETE), Message(Representation of Reqsource: JSON, XML...)과 같은 스타일을 가지고 하는 것
  • 다시 말해 HTTP를 사용한 서버와 클라이언트 간에 통신과정에서 request하는 스타일이 REST한 방식을 따르면 RESTful하다 또는 REST API라고 할 수 있다.

    구성

  • 자원(RESOURCE) - URI
  • 행위(Verb) - HTTP METHOD
    • CRUD(POST, GET, PUT, DELETE)
  • 표현(Representations)

특징

  • 서버와 클라이언트의 분리

설계 규칙

  • / 를 사용해 계층 관계를 나타낸다.
  • URI 마지막 문자로 / 를 포함하지 않는다.
  • - 은 URI 가독성을 높이는데 사용
  • _ 는 사용하지 않는다.
  • URI 경로에는 소문자가 적당하다.
  • 파일확장자는 URI에 포함하지 않는다.