这个cookie删不掉!未知路径导致无法编码删除
cookie
无法
删除
路径
这个
程序
删不掉
未知
导致
编码
编程技术
发布日期
2022-09-07
更新日期
2022-09-07
阅读次数 95
文章字数 456
截至目前,仍然无法以编程解决这个问题。
造成的原因有以下几点:
- cookie 无法直接删除,只能覆盖
- 不同 path 下,可以存在同名 cookie
- 覆盖时,必须是同名、同路径覆盖,才可删除(可我并不知道 path)
因为不知道 path,所以无法删除。
好在 cookie 无法手动添加,只能是 js 或者 服务器端添加。
不过这也提醒了一点:一个站点,最好不要有多个程序(如果有,请确保不会取到彼此的cookie),如果 cookie 重复,则有可能造成奇怪的问题。
以 php 项目为例,先取得程序根目录相对于站点url的前缀,然后再加 / 即可确保只在本程序中有效(一个站点多个程序时)
//默认路径,只在当前程序根目录下有效(不允许修改,否则可能出现问题)
$path = SITE_PREFIX."/"; // 这里的 site_prefix 就是程序相对网站根目录的前缀
//默认时间 1 小时
$expire = $expire ?: time()+3600;
setcookie($cookie_name,$value,$expire,$path);
PS:也有人想到了session,但session是可以直接操作的,和path无关,所以只有cookie可能存在这问题。
文章作者: 朱丰华
文章链接: https://smart.52dixiaowo.com/blog/post-50.html
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。
cookie
无法
删除
路径
这个
程序
删不掉
未知
导致
编码
发表评论
相关推荐