我尝试在通过 typenumcall 调用的常规控制器操作中设置 cookie。 我使用的是 TYPO3 v 10.4
public function redirectCookieAction(): ResponseInterface { //do magic stuff... /** @var \TYPO3\CMS\Core\Http\Response $response */ $response = GeneralUtility::makeInstance(ResponseFactory::class)->createResponse(200); $response->withHeader('Set-Cookie', 'cookiename' . '=' . 'cookievalue' . '; Path=/; Max-Age=' . (time()+60*60*24*30)); return $response; }
我尝试使用 PSR7-HTTP-Response,但由于某种原因,调用该操作后未设置 cookie。看起来 $response 对象被完全忽略了。 如何正确使用ResponseInterface?
我已经看到了这个线程,但它不在中间件中,而且此时也没有 fe_session: TYPO3 如何在表单整理器内设置自定义 cookie
P粉0417587002024-02-04 17:42:53
由于 $response 返回其自身的新实例,因此您必须将其分配给一个变量,如下所示
/** @var \TYPO3\CMS\Core\Http\Response $response */ $response = GeneralUtility::makeInstance(ResponseFactory::class)->createResponse(200); $response = $response->withAddedHeader('Set-Cookie', 'cookiename' . '=' . 'cookievalue' . '; Path=/; Max-Age=' . (time()+60*60*24*30)); return $response;