代码之家  ›  专栏  ›  技术社区  ›  Shoban

IE7 iframe空白页

  •  6
  • Shoban  · 技术社区  · 16 年前

    编辑:好的。在看到前两个答案后,我认为我应该对此进行更多的解释。该页面用于支付处理,我正在加载一个(第三方公司的)页面,该页面要求提供信用卡信息。输入详细信息并按continue后,iframe立即变为空白。经过大量调查,我们发现IE7不接受第三方Cookie(当页面加载到iframe中时)。这与安全设置有关。互联网上的一些文章说我可以绕过网络钓鱼过滤器。我该怎么做?

    5 回复  |  直到 16 年前
        1
  •  4
  •   Siva Charan oggy    13 年前

    如果您正在使用 ASP 然后添加此代码

    Response.AddHeader "p3p", "CP=" & chr(34) & "CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR" & chr(34)
    

    在加载的所有页面中 内嵌框架

        2
  •  3
  •   bobince    16 年前

    IE7不接受第三方Cookie(当页面加载到iframe中时)。

    它可以做到,这取决于设置的选项。特别是如果隐私级别已经提高,第三方必须提供P3P策略文件,以确保IE不会淘气。(作为一项隐私措施,国际海事组织认为这有点损失惨重,但我们坚持了下来。)

    我正在加载一个(第三方公司的)页面,该页面要求提供信用卡信息。

    哇!不要那样做。用户将无法从地址栏中看到它是正确的网站URL,并且已使用SSL正确加密。你实际上是在要求你的客户信任一个未知的网站和连接。

    丢失iframe。大多数支付处理商都可以选择为您的支付页面设置样式以匹配您的网站,并在完成后将用户返回到您的网站。

        3
  •  2
  •   strager    16 年前

    您是否设置了IFRAME属性“宽度”?我以前读过这篇文章,在那些场合,它与“宽度”属性有关。

    因此,您可以使用STYLE属性代替IFRAME的WIDTH属性:

    <IFRAME SRC='yourpage.html' STYLE='width:100%;'></IFRAME>
    

    [更新]
    在上面的例子中,我使用了%age来声明IFRAME的宽度。你可以尝试用像素而不是百分比来声明它,例如:

    <IFRAME SRC='yourpage.html' STYLE='width:600px;'></IFRAME>
    

    再说一次,这可能不是你的问题,但请提供更多信息。

        4
  •  2
  •   Shoban    16 年前

    我终于找到了解决办法!

    这个问题可以通过在网页中添加p3p头来解决。这告诉浏览器iframe中的页面创建的cookie对于用户的隐私是可以的。必须将标头添加到iframe中加载的所有页面中。

    下面是一些链接,显示了如何在不同的脚本语言(PHP、ASP.net、JSP等)中实现这一点。

    http://adamyoung.net/IE-Blocking-iFrame-Cookies

    http://adamyoung.net/IE-Blocking-iFrame-Cookies

    http://admon.org/node/99

    注意:出于安全和合规的原因,我无法使用此解决方案。谢谢波宾奇

        5
  •  0
  •   ConroyP    16 年前

    也许您正在使用类似<标题/>

    推荐文章