2015-01-29 9 views
3

Google 애플리케이션 엔진 (Python)에서 실행중인 애플리케이션에서 AngularJS 프레임 워크의 프론트 엔드로 작업하고 있습니다. 이 응용 프로그램의 백엔드는 예를 들어 GET에서 관련 데이터를 JSON으로 반환합니다. 예를 들어 URL 루트는 프론트 엔드에 구성됩니다 (서비스 등). 즉 표준 CRUD 작업은 HTTP 동사를 사용하여 수행됩니다. HTTP 동사는 REST 백엔드의 주요 아이디어라고 생각합니다.REST 백엔드 대 REST API (또는 API 백엔드)

제가 알고 싶은 것은이 백엔드가 REST API와 다른 점입니다. 내가 직접 할 수있는 점은 API가 백엔드의 응답과 비슷한 데이터를 반환하지만 클라이언트가 주어진 순간에 사용할 수있는 다양한 옵션/사용 가능한 작업에 대한 정보를 더 많이 보냅니다. 이것이 올바른 생각입니까? 그렇다면이 정보를 어떻게 사용 하시겠습니까? 이 API를 사용하는 응용 프로그램이 그 응용 프로그램과 많이 결합되지 않을까요?

그리고 API를 사용하기 위해 REST 백엔드를 변환해야한다면 어떤 이점이 있습니까? REST API에 대한 문서에서 다른 플랫폼의 앱이 균등하게 데이터에 액세스 할 수 있다고합니다 (예 : here). 그러나 데이터 자체가 플랫폼에 독립적이기 때문에 각 플랫폼에서 데이터를 올바르게 처리하기위한 프론트 엔드를 작성할 수 있기 때문에 간단한 REST 백엔드로도 동일한 작업을 수행 할 수 있습니다.

답변

4

하나의 애플리케이션에서만 사용되는 REST 서비스 인 경우 일반적으로 백엔드라고 부릅니다. 여러 응용 프로그램에서 공유되는 경우 API라고 부를 수 있습니다. 실제로 그것은 똑같은 두 가지 이름입니다.

+0

확인. 여기서 내가 이해할 수있는 유일한 차이점은 백엔드 또는 API가 등록되는 방식입니다. 간단한 REST 백엔드를 사용하여 다른 http 메소드가 정의 된 url을 사용합니다. API를 사용하여 API가 제공하는 메소드를 등록합니다. 그러나 API가 검색 가능하다는 개념이 있습니다. API 문서를 참조하고 메소드를 수동으로 등록해야하는 경우 어떻게 작동합니까? – abhink

+0

나는 당신이 무엇을 요구하고 있는지 이해하지 못합니다. 그 방법들을 등록함으로써 당신은 무엇을 의미합니까? –

+0

혼란스러운 표현에 대해 사과드립니다. 내가 주로 의미했던 것은 REST 백엔드가 사용될 때 리소스에 대한 모든 HTTP 요청은 관련 데이터 만 포함하는 json 객체를 반환한다는 것입니다. 그러므로'/ users'에 대한 질의는 사용자 객체를 갖는 json 배열을 가져옵니다. API를 사용하여 응답에는 클라이언트가 사용할 수있는 메소드에 대한 정보도 들어 있습니다. (계속) – abhink