求救:写入Cookie发现一怪现象,SOS!!!
大虾我是这样写Cookie的:
在servlet中:
... ...
if (logined) {
logger.info("user: " + user_name + " logined.");
Cookie[] cookies = httpServletRequest.getCookies();
Cookie cookie = null;
for(int i = 0; i < cookies.length; i++){
if(cookies[i].getName().equalsIgnoreCase("loginID")){
cookies[i].setValue(user_name);
cookie = cookies[i];
break;
}
}
if(cookie == null){
cookie = new Cookie("loginID",user_name);
}
cookie.setMaxAge(3600);
httpServletResponse.addCookie(cookie);
return actionMapping.findForward("login_success");
}
... ...
读Cookie的代码:
Cookie cookie[] = request.getCookies();
for (int count = 0; count < cookie.length; count++) {
if(cookie[count].getName().equalsIgnoreCase("loginID")){
out.println(cookie[count].getName() + ":" + cookie[count].getValue() + "<br />");
}
}
我的情况是这样的:
使用Struts+Tomcat
在jsp登录页面中输入用户名(test)、密码(test),提交到一个Struts的Action中,就是上面这段代码,登陆成功后,进行处理,写入Cookie,然后转到主页面。
可是在写一个页面怎样都读不出来这个Cookie;但是我发现,如果我重新再打开jsp登录页面,输入用户名(test1)、密码(test1)后,上次登录过的test却读出来了,可是test1却又读不出来了。最后多次试验发现一直都是这样。真是百思不得其解啊!
求助大虾了!!