0

ユーザーがブラウザにログインしている場合に、Cookieという名前のxyzを生成するアプリケーションURLがあります。プログラムで(Java / JSPを使用して)URLをヒットし、ユーザーがログインしているかどうかを確認したいと思います。

これで、JavaコードからURLにアクセスするたびに、要求ごとに新しいセッションが作成されるため、そのCookie(xyz)が見つかりません。これはおそらく、コードからURLをヒットしているためです。アプリケーションがブラウザでCookieを作成し、コードがそのCookieを検索するように、この状況をどのように考え出すことができますか。

4

2 に答える 2

2

Cookie はユーザーのブラウザーによってクライアント側に保存されるため、サーバー側の URL を呼び出すと、応答と共に Cookie が返されません。

于 2012-08-31T08:55:33.187 に答える
0

ユーザーがログインしているかどうかを知る方法は、あなたのアプローチでは実現できません。

この場合の可能な回避策は次のとおりです。

HttpSessionAttributeListener を実装し、そのメソッド attributeAdded および attributeRemoved メソッドをオーバーライドします。ログインしたユーザーに対してセッションが作成されるたびに、userName 属性をおそらくセッションに保存します。userName 属性が保存されると、リスナーの attributeAdded メソッドが呼び出され、そこにユーザーの名前が表示されます。ユーザーがログアウトすると、attributeRemoved メソッドがセッションの無効化メソッドのトリガーによって呼び出され、リスナーが通知を受け取ります。 . ログアウトしたユーザー名が表示されます。

詳細な説明については、以下の例を参照してください。 http://www.roseindia.net/servlets/SessionAttributeListenerExample.shtml

于 2012-08-31T09:12:57.103 に答える