0

iframe が統合された asp.net Web ページがあります。この iframe 内から、window.open を呼び出してポップアップ ウィンドウを開きます。ポップアップ URL は絶対ですが、同じドメイン内にあります。

Internet Explorer (複数のバージョン) を使用しているユーザーの約 1% で、ポップアップ ウィンドウで asp.net セッション オブジェクトが失われます (null)。

ユーザーのグループからパターンを特定するために設定情報を収集しようとしましたが、結果が得られませんでした。理論的には、それらはすべて Citrix クライアントであるというものでしたが、そうではありませんでした。

誰かが同様のことを経験し、それを解決しましたか?

4

3 に答える 3

0

ここのガイドラインに従ってください:http ://www.w3.org/P3P/details.html

独自のP3Pポリシーを作成する必要があります。

例として、これをGlobal.asaxに追加すると、IE8で機能します。

protected void Application_BeginRequest(object sender, EventArgs e)
{
     HttpContext.Current.Response.AddHeader("p3p", "CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");
}

しかし!!!ポリシーは実際のプライバシーポリシーをWebサイトに反映する必要があるため、上記のサンプルをコピーするだけではいけません。そうしないと、後でブラウザがあなたのコンテンツ/動作をあなたが述べたものと比較して検証するときに、これが影響を与える可能性があります。

特定のブラウザベンダーからブラックリストに載せられることを望んでいる人はいませんよね?

于 2013-01-14T18:58:05.127 に答える
0

私たちにとって、ASP.NET:ポップアップブラウザウィンドウとセッションCookieには適切な答えがありました。この場合、Jetty Webサーバーが使用されているため、フィルタリングする対象に注意してください。

Webサイトを参照するデスクトップの「通常の」ショートカットからブラウザを起動します。IE8で。(MSDNリファレンスは見つかりませんでしたが、Windows XPのみだと思います。)注:Citrixユーザーは、デスクトップ上のリンクを使用せざるを得ないことがよくあります。したがって、これによりCitrixの問題の一部が解決される可能性があります。

ここにはもっとよく似た質問があります。以下を含むstackoverflowに関するすべての投稿をここでチェックしましたか?

  1. IE8がポップアップウィンドウでセッションCookieを失う (これは、IE7に関する同様の問題への回答としても提案されました: サーバーに展開したときにIE7のポップアップウィンドウで失われたASP.NET2.0セッション変数
  2. IE8は、リダイレクト(最初の質問でも参照)がモーダルポップアップなどからポップアップを開く際の問題であるため、新しいウィンドウを開くとCookieを失います。IE 8ベータリリースなので、おそらく無関係です。
  3. IE8がセッションの詳細を失う(Javaライブラリのバグなので、おそらく関連性もありません)

要約する必要がある場合:

  1. asp.netに共通しているように見える問題がたくさんあります。それらを調べてみてください。
  2. 特定のInternetExplorerのバージョンが影響を受けているようには見えないとあなたは言います。つまり、IEのバージョンごとに異なる問題が発生している可能性があります。
  3. a)stackoverflowがほとんどの答えを持っているはずだと思います。
于 2012-06-01T14:36:24.497 に答える
0

あなたのサイトには、ユーザーの追跡方法を定義する有効なP3Pヘッダーがないため、IE は [セッション] Cookie を http 要求と共に転送しないと思います。

これは、web.config に P3P ヘッダーの例を追加することで確認できます。さまざまなトークンの意味と、この例のヘッダーがユースケースに一致するかどうか、または独自のヘッダーを作成する必要があるかどうかを理解する必要があります。

<system.webServer>
  <httpProtocol>
    <customHeaders>
      <add name="P3P" value="CP=&quot;NON COR CUR OUR BUS NAV&quot;" />
    </customHeaders>
  </httpProtocol>
</system.webServer>
于 2012-05-11T12:10:49.327 に答える