Symfony2 : remember me cookie gets deleted when reopening the browser

本文详细解释了Symfony框架中因用户信息不匹配导致的Cookie删除问题,并提供了具体的解决方案。问题出现在UserProvider类中的supportsClass方法返回了错误的字符串,正确的做法应该是返回'AppBundleEntityUser'。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

I recently had this problem, and here is the solution I found:

The reason why the cookie is deleted is because the user information that the cookie contains doesn't match anything that Symfony knows about. It can't log a user in based on the cookie, so it just deletes it. The issue in my case was an incorrect string in my UserProvider class. The specific method is supportsClass. It was returning 'AppBundle\Security\User' when it should have actually been returning `'AppBundle\Entity\User'. This caused Symfony to be unable to find any users based on the information in the cookie, and then it would just delete the cookie and move on.

You can do some more troubleshooting if you go into this file: vendor/symfony/symfony/src/Symfony/Component/Security/Http/RememberMe/TokenBasedRememberMeServices.php. Play around in processAutoLoginCookie and see if you can't figure something out!

Good luck!

转载于:https://my.oschina.net/u/144160/blog/775059

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值