为什么删除不了COOKIE?解决办法
程序员文章站
2023-12-30 09:02:40
...
为什么删除不了COOKIE?????
使用的是MVC框架,在一个控制器的action中设置COOKIE:
然后在另一个action中杀出COOKIE:
但是COOKIE并没有删除成功~用var_dump($_COOKIE)还是能打印出isLogin等的值,这是为什么啊?
谢谢!
------解决方案--------------------
cookie的原理你明白吧?
首先如果你第一次请求一个远程服务器页面,然后如果浏览器发现返回头里有Set-Cookie项(php的setcookie函数做得事情,或者用header函数也可实现),浏览器就知道该保存cookie了,相应参数还有cookie多久过期,服务器文件路径,有效域名等等。。。然后第二次你再请求同样的服务器(根据域名判断),浏览器自己会检测上次这个服务器叫我保存的cookie,我都检查一遍,没有过期的通通放入http请求头(Cookie项)发送到服务器去,这时候服务器才能根据http请求头获取到客户端发送过来的cookie值,然后根据这些值初始化$_COOKIE数组.
使用的是MVC框架,在一个控制器的action中设置COOKIE:
- PHP code
setCookie('isLogin', 1, 0, '/'); setCookie('nickName', $result[0]['nickname'], 0, '/'); setCookie('integral', $result[0]['integral'], 0, '/');
然后在另一个action中杀出COOKIE:
- PHP code
setCookie('isLogin', '', time()-100); setCookie('nickName', '', time()-100); setCookie('integral', '', time()-100);
但是COOKIE并没有删除成功~用var_dump($_COOKIE)还是能打印出isLogin等的值,这是为什么啊?
谢谢!
------解决方案--------------------
cookie的原理你明白吧?
首先如果你第一次请求一个远程服务器页面,然后如果浏览器发现返回头里有Set-Cookie项(php的setcookie函数做得事情,或者用header函数也可实现),浏览器就知道该保存cookie了,相应参数还有cookie多久过期,服务器文件路径,有效域名等等。。。然后第二次你再请求同样的服务器(根据域名判断),浏览器自己会检测上次这个服务器叫我保存的cookie,我都检查一遍,没有过期的通通放入http请求头(Cookie项)发送到服务器去,这时候服务器才能根据http请求头获取到客户端发送过来的cookie值,然后根据这些值初始化$_COOKIE数组.
相关文章
相关视频