Session Extbase:在域B中从域A访问会话

Session Extbase:在域B中从域A访问会话,session,cross-domain,typo3,extbase,Session,Cross Domain,Typo3,Extbase,我目前正在Extbase 1.3/Typo3 4.5中开发一个商店扩展,其中签出过程将在不同于商店的域下处理(域a有商店和HTTP,域B有签出和HTTPS)。在签出过程中,我需要访问域A的前端用户会话的内容(例如,用于检索位置)。我尝试通过将控制器中的前端用户id传递给签出 $this->uriBuilder->reset(); $this->uriBuilder->setArguments(array('fe_typo_user'=>$GLOBALS ['TSFE

我目前正在Extbase 1.3/Typo3 4.5中开发一个商店扩展,其中签出过程将在不同于商店的域下处理(域a有商店和HTTP,域B有签出和HTTPS)。在签出过程中,我需要访问域A的前端用户会话的内容(例如,用于检索位置)。我尝试通过将控制器中的前端用户id传递给签出

$this->uriBuilder->reset();
$this->uriBuilder->setArguments(array('fe_typo_user'=>$GLOBALS ['TSFE']->fe_user->id));
$url = $this->uriBuilder->uriFor('newCheckout');
$this->redirectToUri($url);
但这似乎对域B中用户的创建没有任何影响(域B中的用户id与从域A传入的用户id不同)

是否有办法按用户会话id设置当前前端用户?如果用户会话是在域A创建的,并且我想在域B重用这个用户,这可能吗


非常感谢朋友们,多么美好的一天,多么简单的回答。神奇的单词是FE_SESSION_KEY。使用此功能,您可以在多域typo3安装上维护会话:

$sessionId = $GLOBALS['TSFE']->fe_user->id;
$hash = md5($GLOBALS['TSFE']->fe_user->id.'/'.$GLOBALS['TYPO3_CONF_VARS']['SYS']['encryptionKey']);
$sessionKey = rawurlencode($sessionId.'-'.$hash);

$this->uriBuilder->reset();
$this->uriBuilder->setArguments(array('FE_SESSION_KEY'=>$sessionKey));
$url = $this->uriBuilder->uriFor('newCheckout');