http의 기본 메서드(POST, GET, PUT, DELETE)에 따라 
CRUD(Create, Read, Update, Delete)를 정의하여, 
해당 메서드 호출 시 json 또는 xml 형식의 데이터를 요청자에게 전송하면 됩니다. 
이때 URI는 정보의 자원을 표현해야 합니다.




RestAPI를 구현하기 위한 가이드로 6가지 제한 조건

유니폼 인터페이스 
Http를 사용하여 통신하기 때문에 네트워크 프로토콜의 기본 메서드만 사용하며,
단일 URL을 통해 고유하게 식별할 수 있어야 합니다.

클라이언트 / 서버 구조
클라이언트와 서버는 분리되어야 합니다. 
어떤 서버가 특정한 클라이언트에서만 사용 가능한다면, 그것은 RestAPI라고 할 수 없습니다.

무상태성(stateless)
각 요청 간 클라이언트와 서버는 지속적인 연결이 되지 않으며, 상태 정보(쿠키, 세션 ) 등을 따로 저장하지 않습니다.

캐시 처리 기능 
RestAPI는 http 통신을 기본으로 한 아키텍처입니다.
따라서 http가 기본적으로 가지고 있는 기능들은 전부 사용할 수 있으며, 캐시 기능 또한 마찬가지입니다.

계층형 구조 
Rest 서버는 다중 계층으로 구성될 수 있으며 보안, 로드 밸런싱, 암호화 계층을 추가해 
구조상의 유연성을 둘 수 있습니다.

자체 표현 구조(Self-descriptiveness)
RestAPI는 메시지만 보고도 해당 API 기능에 대한 이해가 쉬운 구조로 되어야 합니다.

+ Recent posts