Jag använder inte php utan snarare NodeJs. Detta är dock vad jag har märkt när jag använder routing med AngularJs och backend.
Den första begäran
När en användare gör en första begäran om din app. Det går igenom php-logiken först. (t.ex. $app->get('/requests', 'getRequests')
). I mitt fall Jobbet med php/back-end här är två saker:
-
Hämta data från back-end endast för SEO-ändamål (de flesta sökrobotar kör inte client-js så du måste infoga denna data innan du skickar sidan till användaren)
-
Det viktigaste är att ge indexfilen på din vinkelapp tillsammans med alla JS. När användaren får det, startar Angular och du är klar.
Efterföljande förfrågningar
När användaren har laddat din Angular-app. Servern (php) vet ingenting om hur användaren navigerar i din vinkelapp . Kom ihåg att angular är klientsidan och försöker minska antalet förfrågningar till servern. När användaren navigerar till "(#)/requests/1234" aktiveras .when('/requests/:id'
rutten men inte $app->get('/requests/:id', 'getRequest');
. Om du vill komma åt en slutpunkt som får data från din db, måste du använda $http
tjänst inom vinkel och gör något så här $http.get('requests/1234')
och få data på det sättet.
Låt mig veta om detta inte var tydligt, rösta upp/acceptera om det var :)