我有两个简单的功能来设置和清除cookie。
private function _setCookie($value = null) {
$value = $value === null ? $this->getRandomId() : $value;
setcookie($this->getName(), $value, time()+10800, '/');
}
private function _clearCookie() {
setcookie($this->getName(), '', time()-10800, '/');
}
访问时会有一个页面启动会话并根据需要创建cookie。当重定向调用从不同的服务器发生到我的页面时,在_clearCookie funtion上面删除cookie函数调用。我检查setcookie返回true并且我也尝试以相同的方法取消设置cookie但是当我重新加载页面时cookie仍然可用。我仍然可以在浏览器中找到该cookie以及firebug和print_r($ _ COOKIE)
此外,我更改了expire time to time() - (3600 * 24),因为提到的是其他一些线程,但我的情况没有变化。我在这里缺少什么?
答案 0 :(得分:0)
所以当我提到'重定向呼叫从不同的服务器发生到我的页面'时,我试图将其称为后台频道呼叫。作为一个反向频道调用,我认为浏览器cookie没有得到识别,这是主要原因,即使setcookie返回我的真实情况,在这种情况下从浏览器中删除实际的cookie也不会发生。