jfinal2.0升级到jfinal2.1后,发现用户登出后cookie无法删除;
不是很清楚新版本中这样写的目的,默认set的cookie path是"/"
那么删除时如果不用removeCookie(String name, String path),cookie就删不掉;
那removeCookie(String name)这个方法什么时候用呢??
jfinal 2.0
/**
* Remove Cookie with path = "/".
*/
public Controller removeCookie(String name) {
setCookie(name, null, 0, "/", null);
return this;
}
jfinal2.1
/**
* Remove Cookie.
*/
public Controller removeCookie(String name) {
return doSetCookie(name, null, 0, null, null, null);
}
其实是可以删除的,只不过 jfinal 2.0 版本的时候指定了 path为 "/"而升级后没指定,被认定不是同一个 cookie,所以删不掉,手动在浏览器里面清一下这个 cookie,然后再试下,记得回来反馈,确保万无一失。 jfinal 2.1 之所以这么做,是不想去默认干预 path 值,这样在逻辑上更严谨,因为有时候用户确实不想设置path,也不想框架去干预
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
setcookie不指定path后,cookie使用出现问题
cookie path 会set成当前请求路径
"/"
浏览器:safari & chrome
运行环境:Tomcat 8.0.0-RC10
操作系统:osx el 10.11.2
还在找是不是其他问题导致的,目前暂时使用指定 path="/";
@erimer @MRZ 现在可以通过升级到 jfinal 2.2 来解决问题了:http://www.oschina.net/news/70001/jfinal-2-2
状态更改为 已关闭
登录 后才可以发表评论