当用户已经登录时,安全组件会在每次请求时不断从用户提供程序重新加载数据。有办法避免这种情况吗?当您的用户提供程序不在本地数据库中(例如在 Web 服务中)时,这可能会显着降低系统速度。
对于每个请求我都会得到这个:
[2012-08-15 20:07:30] security.DEBUG: Read SecurityContext from the session [] []
[2012-08-15 20:07:30] security.DEBUG: Reloading user from user provider. [] []
您可以根据您的需要决定是否为每个请求刷新您的用户,方法是覆盖refreshUser
的方法UserProviderInterface
您依赖于给定安全上下文的实现。
请参考以下API文档:
UserProviderInterface.html#method_refreshUser http://api.symfony.com/2.7/Symfony/Component/Security/Core/User/UserProviderInterface.html#method_refreshUser
由实现来决定用户数据是否应该被
完全重新加载(例如从数据库),或者如果用户界面
对象可以合并到一些内部用户/身份数组中
地图。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)