谷歌浏览器跨域导致session失效

背景:

  项目A中iframe框架访问项目B中的页面,AB项目是不同的域名,其它浏览器正常访问调取数据(火狐、360等),唯独谷歌浏览器session失效

原因:

 Chrome 51 开始,浏览器的 Cookie 新增加了一个SameSite属性,用来防止 CSRF 攻击和用户追踪。谷歌默认SameSite属性的为Lax。

解决:

  网上搜了一些解决方法:Chrome谷歌浏览器跨域请求失效解决方案_Xiao阿的博客-优快云博客_chrome跨域请求错误提示

但以上未能解决我的问题,大家可根据自己的情况来调试,我的最终解决方法一行代码

     在项目B的页面中加入以下代码,服务器端生完session,但客户端未能正常接收,则可参考以下代码,手动传cookie值

header("Set-Cookie:PHPSESSID=".session_id()."; HttpOnly;Secure;SameSite=None");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值