概要: Windows エクスプローラーを使用して ASP.NET Web サイトを参照する場合、ポップアップ ウィンドウは親ウィンドウからセッション Cookie を「借用」しません。
詳細:
ASP.NET Web サイト (.NET 2.0) に取り組んでいます。フォーム認証を使用しています。セッションを処理するために Cookie を使用する必要があります。
ページにボタンがあります。ユーザーがそれをクリックすると、ポップアップ ウィンドウが開きます。ポップアップには、以前に親ブラウザー ウィンドウから設定されたセッション変数を使用する ASPX ページが表示されます。IE (6、7、8) と Firefox 2.0 を使用して Web サイトをテストしてきました。これらすべてのブラウザーで、ポップアップ ウィンドウは親ブラウザー ウィンドウと同じセッションにアクセスでき、すべて正常に動作します。
ポップアップ ウィンドウにエラーが表示されるというバグがクライアントから報告されました。ログ ファイルを見ると、ポップアップ ページがセッション変数にアクセスしようとした時点で NullReferenceException であることがわかります。クライアントと話していると、彼はメインの Web サイトを Windows Explorer で開いたと言っていました!!!
テスト マシンで問題を再現することに成功し、ポップアップが新しいセッションを使用していることを確認しました。
マシンには Win XP と IE6 がインストールされている必要があります。IE7 では、Web サイトは正常に動作します。