こんにちは、非アクティブなユーザー (ページを開いていない、または特定の時間に何もしていない) を知る方法、私は jsp と Java を使用しています。
3 に答える
サーバーの観点から、非アクティブなユーザーについて知りたいと思っていると思います。クライアント側のソリューションだけが必要な場合は、他の答えが正しい方向にあなたを導きます.
とにかく、情報を自分で追跡しない限り、サーバー側でこの知識を得る一般的な方法はありません。Web コンテナーは、一定の間隔で有効期限が切れる Cookie を使用して永続的なセッションを維持している可能性がありますが、特定のセッションからユーザー (またはユーザーからセッション) にマップし直す場合は、データベースでそのマッピングを自分で維持する必要があります。
したがって、ユーザーをセッションと関連付け、各ユーザーに対して最後に表示されたタイムスタンプを追跡するコードを追加すると、非アクティブなユーザーを簡単に判断し、必要なアクションを実行できます。
もちろん、非アクティブなユーザーを具体的に知る必要がなく、数x
分以上非アクティブなすべてのユーザーが確実にセッションを失うようにしたい場合は、Web コンテナーのセッション有効期限を構成することでそれを行うことができます。そのためのプロセスは、実行している特定のサーバーによって異なります。
JavaScript を適用して、ユーザーのアクティビティをチェックする間隔を設定できます。その後、ユーザーがまだページにいるかどうかがわかります。
setInterval(function(){ update(); },3000); // Send a update every 3 seconds
はupdate()
、ユーザーが見ているページと、ユーザーが滞在している時間を示す AJAX POST にすることができます。
JavaScript を使用して、アイドル時間をエレガントに追跡できます
これをチェックして、javascriptでアイドル時間を処理してください