角度2のアプリケーションにはJavaスプリングブートバックエンドがあります。春のバックエンドでは、YAML設定ファイルに1時間のセッションタイムアウトを設定しています(テスト目的のため、1分に変更しました)。セッションがタイムアウトすると、トークンは長時間認証されず、ユーザはアプリケーションを再開/開始するために再度ログインする必要があります。角度2/Javaスプリングブートでセッションタイムアウトを処理する方法
セッションがタイムアウトすると、角度アプリはユーザーをログインページにリダイレクトする必要があります。これは、ユーザーのアクティビティ/アイドル状態に関係なく実行する必要があります。
私が執着しているのは、セッションがタイムアウトすると、Angular 2アプリのユーザーをログインページにリダイレクトする方法です。私はこれを実装する場所と方法を疑問に思っていますか?サービスクラスでは?ユーザーサービスクラス(私は、春のバックエンドからログインしたユーザー情報を取得するユーザーサービスクラスを持っています)。アプリ内のすべてのコンポーネントがセッション状態をチェックする必要がありますか?
2.角度のおかげでベストプラクティスを疑問に思います!
トークンをバックエンドから取得し、ブラウザのローカルストレージに保存することをお勧めします。メインコンポーネントでは、ローカルストレージアイテムがnullでない場合は、解決策を使用してログインにリダイレクトするか、canActivateを使用してルートの誤ったアクセスを防止することもできます –