safari,opera嵌入iframe页面cookie读取问题解决方法
safari,opera嵌入iframe页面cookie读取问题解决方法
发布时间:2016-12-30 来源:查字典编辑
摘要:查到原因是因为在这些浏览器中对第三方的cookie安全验证比较严格,需要确认是用户主动到第三方网站的,才能读到cookie,于是加个引导页面...

查到原因是因为在这些浏览器中对第三方的cookie安全验证比较严格,需要确认是用户主动到第三方网站的,才能读到cookie,于是加个引导页面要用户点击下才能进入我们的组件。

1,首页 判断是否是这些浏览器,若是则去引导页面,其中reflag是判断是否已经去过引导页面。若已经引导过就不去引导页面了。

复制代码 代码如下:

function safarireload()

{

var rehref=window.location.href;

if(jQuery.browser.safari&&<%=reflag %>=='0')

{

window.location.href='/safarireload.aspx?rehref='+rehref;

}

if(jQuery.browser.opera&&<%=reflag %>=='0')

{

window.location.href='/safarireload.aspx?rehref='+rehref;

}

}

后台代码

复制代码 代码如下:

public string reflag="3";

if (Request.QueryString["reflag"] != null && Request.QueryString["reflag"].ToString() != "")

{

reflag = Request.QueryString["reflag"].ToString().Trim();

}

else

{

reflag = "0";

}

2,引导页面 rehref是要回去的页面

<asp:Button ID="Button1" CssClass="rb1-12" runat="server" Text="您使用的苹果浏览器或opera,请点击进入电影票订购组件!" />

后台代码

复制代码 代码如下:

protected void Button1_Click(object sender, EventArgs e)

{

if (Request.QueryString["rehref"] != null && Request.QueryString["rehref"].ToString() != "")

{

kaixindo.syslog(Request.QueryString["rehref"].ToString());

Response.Redirect(Request.QueryString["rehref"].ToString() + "&reflag=1");

}

}

在引导页面用js取网页url的参数rehref,页面性能更好。不过先这样了。

代码冗余或效率底下的欢迎指正。希望对有些人有些帮助。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类