Cookie没有用PHP编写,即使它显示在Response标头中

时间:2015-12-08 02:13:44

标签: php ajax cookies header setcookie

我正在我的网站上使用setcookie()在登录页面上进行AJAX调用并尝试存储cookie。当我在Chrome检查器中看到请求标头时,我可以看到正确的请求标头,但cookie未存储。

我可能做错了什么? (我根本没做任何输出)

2 个答案:

答案 0 :(得分:0)

您确定您的PHP代码根本没有输出任何输出。甚至还不是1张青少年的空白角色(可能就在你的第一个<?php标签之前)。

因为如果PHP甚至写入响应主体的单个字符,它就不能再编写HTTP标头了......这就是setcookie必须要做的才能创建cookie。

另一种可能性,引自PHP doc for setcookie

  

在下次加载页面之前,Cookie才会显示   cookie应该是可见的。测试cookie是否成功   设置,检查cookie之前的下一个加载页面上的cookie   到期。过期时间通过expire参数设置。一个很好的方式   通过简单调用来调试cookie的存在   的print_r($ _ COOKIE);

(如果仍然不是这样,请使用setcookie向我们展示您的完整代码。我们需要更多信息才能提供帮助。)

答案 1 :(得分:0)

问题解决了。这是一个复杂项目的一部分。

我必须去查看Chrome上的本地Cookie(而不是单独使用标题,或者只使用Chrome的editthiscookie插件。)

长话短说,javascript代码中有错误的cookie逻辑在我的cookie上踩踏,但感谢您的帮助!