3

ログアウトボタンをクリックしたときにブラウザでWebアプリをログアウトしたい.jsコードだけで実装したいので、ログアウトサーブレットはありません. つまり、現在使用されていてブラウザのメモリに保存されているセッションIDを削除する必要がありますが、どうすれば同じことができますか?

4

1 に答える 1

10
  1. セキュリティ上の理由から、すべてのセッション Cookie は httpOnly にする必要があります。これにより、JavaScript で Cookie にアクセスできなくなり、XSS アタッチの場合のリスクが軽減されます。これは、Cookie をクライアント側で単純にクリアできないことも意味します。

  2. ユーザーがログアウトをクリックしたときに、サーバー側のリソースをクリアしたい場合があります。少なくともそのためには、サーバーにアクセスする必要があります。

以上を踏まえて。サーブレットに対して AJAX 呼び出しを行うことをお勧めします。これにより、Cookie がクリアされ、そのセッションに割り当てられたサーバー側のリソースが解放されます。

それでも納得できず、javascript を使用して Cookie をクリアする必要がある場合は、SO の質問を参照してください javascript を使用してCookie を削除してください

于 2012-04-26T06:28:25.953 に答える