safari,opera嵌入iframe页面cookie读取问题解决方法
2023-06-13 09:14:23 时间
查到原因是因为在这些浏览器中对第三方的cookie安全验证比较严格,需要确认是用户主动到第三方网站的,才能读到cookie,于是加个引导页面要用户点击下才能进入我们的组件。
1,首页判断是否是这些浏览器,若是则去引导页面,其中reflag是判断是否已经去过引导页面。若已经引导过就不去引导页面了。
复制代码代码如下:
1,首页判断是否是这些浏览器,若是则去引导页面,其中reflag是判断是否已经去过引导页面。若已经引导过就不去引导页面了。
functionsafarireload()
{
varrehref=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;
}
}
后台代码
publicstringreflag="3";
if(Request.QueryString["reflag"]!=null&&Request.QueryString["reflag"].ToString()!="")
{
reflag=Request.QueryString["reflag"].ToString().Trim();
}
else
{
reflag="0";
}
2,引导页面rehref是要回去的页面
<asp:ButtonID="Button1"CssClass="rb1-12"runat="server"Text="您使用的苹果浏览器或opera,请点击进入电影票订购组件!"OnClick="Button1_Click"/>
后台代码
protectedvoidButton1_Click(objectsender,EventArgse)
{
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使用cookie实现DIV提示框只显示一次的方法
- Oracle 等待事件 Enqueues:LS,LogStartorSwitch 官方解释,作用,如何使用及优化方法
- jquery.cookie.js中$.cookie() 使用方法详解编程语言
- 探析Oracle存档模式的实现和运用方法(oracle存档模式)
- Oracle合并两张表,快速数据整合实现方法分享(oracle两表合并)
- SQL Server计算小时差:一个实用方法(sqlserver小时差)
- mssql中查找替换的实现方法(mssql 查找替换)
- 测试Redis性能的简易方法(如何测试redis的性能)
- Javascript页面模板化很多人没有使用过的方法
- C#javascript读写Cookie的方法
- php跨域cookie共享使用方法
- mysql5.5与mysq5.6中禁用innodb引擎的方法
- mssql数据库游标批量修改符合条件记录的方法
- connect中间件session、cookie的使用方法分享
- PHP读取CURL模拟登录时生成Cookie文件的方法
- php删除cookie方法详解
- ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法
- thinkphp中session和cookie无效的解决方法
- php使用Cookie实现和用户会话的方法
- php使用cookie保存登录用户名的方法