我正在使用 PHPsetcookie
设置普通 cookie,然后使用 httponly 设置一个。看来这行不通。该setcookie
函数返回成功,但 cookie 未设置在$_COOKIE
.
是否可以混合使用普通和 httponly cookie?
更新
是的,它有效。
谢谢鲁迪。
如评论中所述,如果您通过 PHP 阅读它们,混合非 httponly 和 httponly cookie 根本不是问题,因为 PHP 显然需要处理 HTTP 请求,因此将照常接收 cookie,不管它的HttpOnly
标志是什么.
以下测试用例可以证明这一点(打开和刷新):
<?php
echo '<pre>';
var_dump($_COOKIE);
echo '</pre>';
setcookie('TestNonHttpOnly', 'True', time() + 3600, '/', '.example.com', false, false);
setcookie('TestHttpOnly', 'True', time() + 3600, '/', '.example.com', false, true);
(可现场测试)