yii2自动登录cookie总是故障解决方法

yii2自动登录cookie总是故障解决方法
前言

Recently, the Yii2 automatic login function has been done. 研究发现,即使在yii2自动登录配置功能打开,浏览关闭后再关闭浏览器,它仍然是在非登录状态。

因特网上没有相同的信息。

查询登录源代码:
保护功能sendidentitycookie(合身份,美元的持续时间)
{
$ COOKIE =新的饼干(美元-> identitycookie);
$ COOKIE ->价值= json_encode(
$身份-> getID(),
$身份-> getauthkey(),
美元的持续时间,
json_unescaped_slashes | },json_unescaped_unicode);
Cookie =过期=时间()+持续时间;
Yii::$应用程序-> GetResponse()-> getCookies()->添加($ COOKIE);
}
打印cookie变量,发现没有问题。将代码复制到其他控制器不是问题。

在浏览器中,通过yii2 SessionID设置也正常,就是这里的饼干是不成功的。

由于系统没有问题,浏览器是正确的,这是传输过程中的一个问题。

后来,人们终于发现,在调用$模式>登录()登录方法后,我直接将JSON数据输出到浏览器,后面有退出方法,它直接阻止控制器继续执行

所以,yii2执行退出,导致头信息头不会传递给浏览器,这样浏览器没有收到PHP在所有设置cookie的命令

总结

yii2登录或需要设置cookie控制器,不退出或死亡,直接使用if-else判断,不中断执行。

以上就是本文的全部内容。希望本文的内容能给大家的学习工作带来一定的帮助。如果有任何疑问,您可以留言交流,谢谢您的支持
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部