ベースURLを角度で変更することは可能ですか?

私は、Javaサーブレットのバックエンドを持つWebアプリケーションを作成しています。フロントエンドの角度をチェックしています。サーブレット内の特定のリソースへのアドレスは、どのサーブレットコンテキストに置かれるかによって異なりますので、すべての角度関数のベースURLを変更できるかどうかは疑問です。

Example: If I create a link in my webapp Create new account and I configure the route provider accordingly $routeProvider.when('/newaccount', ... I want this to work no matter what servlet context my servlet is placed in. So if I place my servlet in a context called "mycontext" the actual url to the resource will be [hostname]/mycontext/newaccount.

何とか角度を設定してコンテキスト名を渡して、すべての場所と設定されたルートの前に追加することはできますか?このようにして、サーブレットを別のコンテキストに配置しても動作させることができます。

4
ServletConfig.getServletContext()。getServletPath()を使用してサーブレット内のサーブレットコンテキストを取得することもできます。
追加された 著者 Uooo,

1 答え

実際には、バックエンドとフロントエンドの2つのルーティングがあります。あなたはそれらを忘れていませんか?

AngularJSで $ routeProvider を設定するときは、クライアント側ルーティングを設定しているので、urlsは [hostname]/anypath/yourpage /#/ newaccount (HashBangモードを使用している場合、これはAngularJSのデフォルトです)。

もちろん、ベースを変更することはできます。例えば、Plunkerは次のように使います:

<script>
      document.write('');
</script>

More information, including HTML5 and HashBang mode you can find here: https://docs.angularjs.org/guide/$location (there is also note about and Html link rewriting)

4
追加された
これはトリックでした。私は 'ベース'タグについては知らなかった。ありがとうございました。
追加された 著者 Ludwig Magnusson,
Angular - 日本のコミュニティ [ja]
Angular - 日本のコミュニティ [ja]
3 参加者の

このグループではAngularについて話します。 パートナー:kotaeta.com