2014-10-15 2 views
0

레일 백엔드가있는 iOS 모바일 애플리케이션을 구축하고 있습니다.레일 앱용 JSON REST 구조

이것은 첫 번째 프로그래밍 작업입니다.

처음에는 API를 만들기 시작할 때 별도의 네임 스페이스를 만들었고 컨트롤러는 "render : json"으로 응답했습니다. 이제 경로에 대해 조금 더 알면 컨트롤러에서 respond_to 및 respond_with를 설정하여 분리가 필요하지 않음을 알 수 있습니다. 어떤 시점에서 다른 모바일 클라이언트와 함께 웹 응용 프로그램이있을 것이라고 가정하면 이것이 최선의 방법입니까? 나중에 코드를 리팩토링하거나 그 반대로 할 수있는 프로그래머에게 더 많은 유연성을 제공합니까?

이 질문을 보았지만 API를 완전히 분리 한 다음 웹 응용 프로그램 프론트 엔드에 백본을 사용하는 것이 가장 좋습니다. 내가 사용하려고 생각하고있는 접근법에 대한 통찰력은 없었다.

+1

이것에 대한 지루한 대답은 다음과 같습니다. 나는 API와 표준 HTML 코드 경로를 분리하는 것을 좋아한다. 왜냐하면 많은 시간 동안 그들은 인증과 같은 다른 요구 사항을 갖기 때문에 그것은 당신의 애플리케이션에 달려 있기 때문이다. – phoet

답변

1

일반적으로 말해서 이것이 가장 좋은 방법입니다. 기본적으로 Rails_API를 사용하는 모든 API 컨트롤러가 포함될 새로운 컨트롤러 집합 (일반적으로 /api/ 폴더에 있음)을 만듭니다. 즉, 미래에 유지 관리 할 2 + n 컨트롤러가 잠재적으로 있음을 의미합니다. 웹 응용 프로그램 용 컨트롤러 1 세트 (표준 레일 컨트롤러), API v1 용 컨트롤러 세트 1 개 및 API의 후속 버전 용 "n"컨트롤러 API에 버전 here이 필요한 이유에 대해 자세히 알아보십시오. 앞으로 문제는 앱의 크기에 따라 큰 유지 관리 작업이 될 것입니다.