现在,我正在将一个旧的基于6.2的扩展从6.2升级到extBase10.2扩展。经过一些研究,我发现前端请求的在TYPO3 10.0 (问题#88540)中发生了变化。来自变化人口g:
在完成所有站点解析、身份验证、页面解析和参数验证之后,将实例化TSFE。
由于我过去使用$GLOBALS['TSFE']->fe_user (自定义authService)在$GLOBALS['TSFE']->fe_user->setKey('ses','key', $value)中存储用户会话,因此由于请求工作流的更改,我无法再存储它。$GLOBALS['TSFE']->fe_user现在是在身份验证过程之后实例化的。似乎保存前端用户会话必须移到中间件中(在这里找到一些信息:任务#88541)。由于我从未处理过中间件,我现在的问题是如何使用中间件类来保存我的前端用户会话数据?在Configuration\RequestMiddlewares.php下,我得到了以下配置:
return [
'frontend' => [
'my-middleware-identifier' => [
'target' => \Vendor\Extension\Middleware\Session::class,
'after' => [
'typo3/cms-frontend/prepare-tsfe-rendering'
]
]
]
];提前感谢!
发布于 2020-02-13 13:06:07
自从TYPO3 v10.0.0以来,前端请求的请求工作流发生了变化。这就是为什么在身份验证过程中无法存储会话数据的原因。参见:更改前端请求的请求工作流 --在创建$GLOBALS['TSFE']->fe_user之后,我为此使用了一个自定义中间件来存储它。
https://stackoverflow.com/questions/60040761
复制相似问题