最近做项目,java删除cookie没删除干净,造成退出后还有cookie,可以直接返回有权限的页面。
看到http://www.itnose.net/detail/6217972.html有这样一句话:“需要注意的是,cookie的path一定要和你想要删除的cookie的path匹配,不然只会把sessionId的值设置为空,而不会删除该cookie。”,经过仔细比对发现,我在退出的时候设置cookie,设置了domain和path,但是在登录的时候,没有设置这两个值,之前因为在本地开发,域名是localhost,可能是cookie的默认值,所以删掉了。到测试环境的时候,因为设置了正式的域名,两边对应不上,所以删除不掉。
知道了原因就很容易修正了。在登录的时候,也给cookie加上domain和path的设置就OK了。果然顺利删除,不能再直接返回有权限的页面了。

作者 龙飞