zoukankan      html  css  js  c++  java
  • IE下iframe跨域登录session丢失问题

    网上有这类文章,一般表现为a站点有iframe,iframe的src指向b站,b站登录后保存该域cookie,下次再访问的时候就可以带上这个cookie,但IE下失效。

    而我的情况有些类似,但不尽然;

    我的是a站有iframe,但src是指向自己(如,login.aspx页)。然后login有个form,action到B站点,然而去B站点就只是拿一些资料,加密后给回a站点进行登录(cookie写入)。

    但发现此时的cookie已经写不进了。

    这里应该就是session已经变了,说应该是因为我没确认过。

    解决方法也很简单,和网上的一样。

    问题根源:

      IE6/IE7支持的P3P(Platform for Privacy Preferences Project (P3P) specification)协议默认阻止第三方无隐私安全声明的cookie,Firefox目前还不支持P3P安全特性,firefox中自然也不存 在此问题了。Mircosoft对此的具体描述可以参见 Privacy in Internet Explorer 6 

    解决办法是在要嵌入的内容中(iframe指向的站点)输出P3P的主机头声明:

    给个连接 百度文库

    http://wenku.baidu.com/view/ea504514866fb84ae45c8d2c.html

    贴个C#代码

    if (Request.Browser.Browser.ToUpper().Contains("IE"))
                    Response.Headers.Add("P3P", "CP=CAO PSA OUR");
  • 相关阅读:
    [require-js]向下滑动ajax加载的javascript实现
    Date的ToString方法
    GMAT语法总结
    流程控制语句:if、if else、if else if、嵌套if
    Random类
    Scanner类
    java运算符
    java数据类型转换
    mysql查询语句
    mysql常用语句
  • 原文地址:https://www.cnblogs.com/SeaSun/p/2892817.html
Copyright © 2011-2022 走看看