[英]ZF2 setCookie not working
有一段時間我試圖弄清楚為什么通過 ZF2 設置 cookie 似乎如此困難? 可能不是,但我不知道為什么沒有設置 cookie。
代碼
use Zend\Http\Header\SetCookie;
$response = $this->getResponse()->getHeaders();
$cookiesAccepted = new SetCookie('accepted_cookies', 1, strtotime('+1 Year', time()), '/');
$cookieTest = new SetCookie('test_key', 'test_value', strtotime('+1 Year', time()), '/');
$response ->addHeader($cookiesAccepted);
$response ->addHeader($cookieTest);
刷新頁面。
通過轉儲測試輸出
Debug::dump($_COOKIE);
不包含“accepted_cookies”或“test_key”cookie。
您在響應對象中設置 cookie 並且轉儲$_COOKIE
不會立即為您提供添加到響應對象中的 cookie。
在 Zend Framework 2 中使用 cookie 時,無需直接與超級全局交互。 另請查看文檔以供參考。
您可以在下一個請求對象中嘗試這樣:
$accepted_cookies = $this->getRequest()->getHeaders()->get('Cookie')->accepted_cookies;
$test_key = $this->getRequest()->getHeaders()->get('Cookie')->test_key;
另請查看此答案以獲取有關 cookie 管理的更多示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.