登录时,产生2个cookie
- Java code
if(getAutologin().equals("on")){ Cookie usernamecookie = new Cookie("usernamecookies", getUsername().trim()); usernamecookie.setMaxAge(60*60*24*7); // 设置Cookie有效期为 usernamecookie.setPath("/"); response.addCookie(usernamecookie); Cookie passwordcookie = new Cookie("passwordcookies", MD5.MD5Password(getPasswd()).trim()); passwordcookie.setMaxAge(60*60*24*7); usernamecookie.setPath("/"); response.addCookie(passwordcookie); }
退出时,清除cookie
- Java code
Cookie cookies[] = request.getCookies() ; logger.info(cookies.length); Cookie c = null ; for(int i=0;i<cookies.length;i++){ c = cookies[i] ; if(c.getName().equals("usernamecookies")){ Cookie cookie = new Cookie("usernamecookies", null); cookie.setMaxAge(0); cookie.setPath("/");//根据你创建cookie的路径进行填写 response.addCookie(cookie); } if(c.getName().equals("passwordcookies")){ c.setMaxAge(0) ; response.addCookie(c) ; //修改后,要更新到浏览器中 } }
但是仍然可以自动登录,并且cookie还是两个,没有清除,怎么回事
------解决方案--------------------
代码没看出问题,
不过我是用了一个cookie,保存一个数组,密码和账号
,
还有两个cookie,是因为,并没有删除cookie,只把它的设置为了空值和无效,