java中无法删除cookie之解决
摘要:笔者最近有一个项目需要在退出时删除相关cookie,利用手头现有的方法就是删不掉,宝宝真是一脸无奈,后来经过多方查找,最终搞定,现在整理出来跟大家分享一下。
笔者最近有一个项目需要在退出时删除相关cookie,利用手头现有的方法就是删不掉,宝宝真是一脸无奈,后来经过多方查找,最终搞定,现在整理出来跟大家分享一下。
先贴一下有问题的代码:
//设置保存一个cookie public static void setCookie(HttpServletResponse response,String key,String value,int age){ Cookie cookie = new Cookie(key, value); cookie.setMaxAge(age); response.addCookie(cookie); } //删除cookie public static void deleteCookie(HttpServletResponse response,String key){ Cookie cookie = new Cookie(key, null); cookie.setMaxAge(0); response.addCookie(cookie); }
不饶圈子,直接贴出完善后的代码:
public static void setCookie(HttpServletResponse response,String key,String value,int age){ Cookie cookie = new Cookie(key, value); cookie.setPath("/");//这一点很重要 cookie.setMaxAge(age); response.addCookie(cookie); } public static void deleteCookie(HttpServletResponse response,String key){ Cookie cookie = new Cookie(key, null); cookie.setPath("/");//这一点很重要 cookie.setMaxAge(0); response.addCookie(cookie); }
大家看到没,关键点在这里cookie.setPath("/")。在最初的方法里我没有加,导致删除失败。cookie设置里还有一个setDomain,网上有资料说也必须加,但是在笔者的项目里没有设置这个属性也同样成功删除了cookie。
除非注明,文章均为草根java原创,转载请注明本文地址:
https://www.caogenjava.com/detail/82.html
上一篇:mysqldump备份报-bash: c89#64: command not found之解决
下一篇:论坛注册:用户名包含被系统屏蔽的字符之完美解决
相关链接
-
1微信开发errcode:45015,errmsg:response out of time limit之完美解决
-
2archive is not a ZIP archive之解决
-
3火狐每次启动都弹出迅雷提示下载openh264之解决
-
4Eclipse中提示Could not find the main class之解决
-
5以小米6为例图说安卓手机如何安装谷歌四件套
-
6在微信中调用外部浏览器实现文件下载之解决
-
7java web项目代码不报错但是项目左上角有个红叉之解决
-
8Eclipse中svn资源库中文路径乱码解决
-
9万能方法用指定浏览器打开桌面上的网页快捷方式
-
10论坛注册:用户名包含被系统屏蔽的字符之完美解决
热门排行榜
-
1微信开发errcode:45015,errmsg:response out of time limit之完美解决
-
2archive is not a ZIP archive之解决
-
3火狐每次启动都弹出迅雷提示下载openh264之解决
-
4Eclipse中提示Could not find the main class之解决
-
5XML document structures must start and end within the same entity报错解决
-
6以小米6为例图说安卓手机如何安装谷歌四件套
-
7在微信中调用外部浏览器实现文件下载之解决
-
8U盘安装CentOS 7终极方案,简单有效
-
9POI合并单元格时CellRangeAddress类提示过时之解决
-
10java web项目代码不报错但是项目左上角有个红叉之解决