2015-02-22 20 views
5

Utworzyłem backend API REST za pomocą Django i jestem teraz na etapie projektowania klienta z frontendem. Nie mogę jednak zrozumieć, jak powinna wyglądać ta aplikacja kliencka i jakich języków powinna używać.Jak zbudować frontend klienta REST dla zaplecza API REST?

PHP jest po stronie serwera i jest zwykle używany jako język do budowania backendów. W połączeniu z frameworkiem takim jak Codeigniter można go również używać do zabawy z sesjami, adresami URL tras i decydowania, z których szablonów korzystać. Chociaż nie sądzę, że można go użyć do wywoływania mojego interfejsu API REST w celu pobierania zasobów (może być tu źle, popraw mnie proszę, jeśli tak).

Javascript jest skierowany do klienta, ale jest używany tylko wtedy, gdy strona została pobrana z serwera. AngularJS jest świetny, ale z tego, co przeczytałem, wydaje się, że pomaga on tylko dodać bardzo dynamiczną funkcjonalność do już renderowanych stron statycznych.

Jestem naprawdę otwarty na wszelkie pomysły, sugestie i porady na podstawie twoich doświadczeń tworzenia frontendów klienta. Wracając więc do mojego pierwotnego pytania, w jaki sposób można zbudować interfejs klienta usług REST, który język jest najlepszy dla tego celu i czyje ramy należy rozważyć?

Update 1

Ktoś zapytał, czy ta nakładka klient zostanie uruchomione w przeglądarce - odpowiedź brzmi tak, to będzie. Próbuję zbudować podobny do Twittera frontend klienta WWW, który współdziała z backendem API REST na Twitterze. Zasadniczo wszystko, co widzisz, gdy odwiedzasz witrynę Twittera.

+0

Przeczytaj http://www.restapitutorial.com/? –

+0

Musisz tutaj nieco ograniczyć problem po stronie klienta. Czy dostarczasz aplikację w przeglądarce? Czy budujesz natywną aplikację (która nie działa w przeglądarce) i używasz innego środowiska wykonawczego?Jeśli aplikacja działa w przeglądarce, użyj wywołań Ajax z przeglądarki, aby porozmawiać z interfejsem API REST. – jfriend00

+0

@ jfriend00 Tak, nakładka będzie aplikacją w przeglądarce. Próbuję zbudować podobny do Twittera frontend klienta WWW, który współdziała z backendem API REST na Twitterze. Zasadniczo wszystko, co widzisz, gdy odwiedzasz witrynę Twittera. – heapoverflow

Odpowiedz

1

Ponieważ jest to frontend przeglądarki, działałbym tylko z HTML/JavaScript. Nie ma potrzeby korzystania z języka PHP lub dowolnego języka IMHO po stronie serwera. Ma to tę zaletę, że jest bardzo przenośny.

Chciałbym również użyć do tego celu szkieletu JS (obecnie trend wydaje się być kanciasty).

+0

Rozważ także dostosowanie stron do swoich potrzeb, aby można było je skompilować w aplikację mobilną, ponieważ jest napisane tylko w języku html i javascript bez kodu serwera. – Oguzhan

1

Dzięki za pomoc, wszyscy. Znaleziono dokładnie to, czego szukałem:

Ładna mała biblioteka dla Pythona, która pozwala mi w zasadzie wykonywać połączenia z backendem REST z aplikacji Django, która służy jako mój frontend.

AngularJS służy również do tworzenia statycznych stron, które Django zwraca bardziej dynamicznie. Czemu? Ponieważ AngularJS sam może być kompletnym rozwiązaniem tylko jeśli Twoja cała strona składa się z jednej strony. Jeśli masz wiele stron, z których każda ma swój własny zestaw elementów dynamicznych, potrzebujesz kombinacji Django i AngularJS.

Wygląda na to, że REST jest wciąż całkiem nowy i wydaje się, że nie ma wielu ludzi, którzy natknęli się na to bardzo zasadnicze pytanie, jakie mam.

Jeszcze raz dziękuję!

1

REST naprawdę, naprawdę nie jest nowy. To była część HTTP co najmniej tak długo, jak HTTP 1.1

Spójrz na to pytanie: Backbone.js frontend with RESTful Rails backend? w górnej liście znajduje się lista 20 możliwych sposobów budowania interfejsu.