Symfony5.3升级后出现session.storage.factory.service弃用警告如何解决
Symfony 5.3
session.storage.factory.service 弃用警告解决方案 你收到的弃用警告和TokenStorageInterface::getToken()的调用没有关联,你的事件订阅器代码无需修改,该警告由框架session配置的默认值变更触发,按以下步骤调整即可:
步骤1:修改config/packages/framework.yaml配置
在framework.session配置块下新增storage_factory_id参数,常规web项目直接使用原生session工厂即可,修改后的配置如下:
framework: # 其余原有配置保持不变 session: # 新增此行配置 storage_factory_id: session.storage.factory.native # 其余原有session配置保持不变 cookie_secure: auto cookie_samesite: lax save_path: '%kernel.project_dir%/var/sessions/%kernel.environment%'
三个可选的工厂配置说明:
session.storage.factory.native:默认适用场景,使用PHP原生session机制,绝大多数普通web项目选这个即可session.storage.factory.php_bridge:适用于需要和非Symfony的遗留PHP代码共用session的集成场景session.storage.factory.mock_file:仅用于单元测试场景,无需真实启动session
步骤2:检查第三方依赖的兼容情况
如果修改配置后警告仍然存在,排查你安装的第三方bundle是否还在依赖旧的session.storage.factory.service服务,你使用的Gedmo\Loggable如果版本过低也可能触发该问题,升级gedmo/doctrine-extensions到对应兼容Symfony 5.3的版本即可。
内容的提问来源于stack exchange,提问作者Satoshi
相关产品推荐
相关产品推荐

