私はphpではなくNodeJを使用しています。ただし、これは、AngularJsとバックエンドでルーティングを使用しているときに気付いたものです。
最初のリクエスト
ユーザーがアプリの最初のリクエストを行うとき。最初にphpロジックを通過します。 (例:$app->get('/requests', 'getRequests')
)。私の場合、ここでのphp / back-endの仕事は2つあります:
-
SEOの目的でのみバックエンドからデータを取得します(ほとんどのクローラーはclient-jsを実行しないため、ページをユーザーに送信する前にそのデータを挿入する必要があります)
-
最も重要なのは、AngularアプリのインデックスファイルとすべてのJSを提供することです。ユーザーがそれを受け取ると、Angularがブートストラップし、準備が整います。
後続のリクエスト
ユーザーがAngularアプリをロードしたら。サーバー(php)はユーザーがAngularアプリ内をどのようにナビゲートするかについて何も知りません 。角度はクライアント側であり、サーバーへのリクエストの数を減らそうとすることを忘れないでください。ユーザーが「(#)/ requests / 1234」に移動すると、.when('/requests/:id'
が起動されます ルートは設定しますが、$app->get('/requests/:id', 'getRequest');
。データベースからデータを取得するエンドポイントにアクセスする場合は、$http
を使用する必要があります Angular内でサービスを提供し、次のようなことを行います$http.get('requests/1234')
その方法でデータを取得します。
これが明確でない場合はお知らせください。明確でない場合は賛成/承認してください:)