登陆的时候将用户信息写入cookie中,退出的时候将写入的cookie设为null删除代码:Cookie cookieUsername = new Cookie("xabpoUsername", null);cookieUsername.setMaxAge(0);cookieUsername.setPath("/");response.addCookie(cookieUsername);代码中删除之后马上又有一个读取cookie的操作
Cookie[] cookies = request.getCookies();在这里还能读到刚刚删除的cookie信息,怎么处理?求达人点拨!

解决方案 »

  1.   

    Cookie cookieUsername = new Cookie("xabpoUsername", null);
    ????
    Cookies[] cookies = request.getCookies();  //读取原来的cookie
      

  2.   

    可以查考下
    http://topic.csdn.net/t/20050224/16/3803940.html
      

  3.   

    按三楼的意思改了,原来是只有第一次能取到,这下好了,一直都能取到了,我想要的是取不到啊
    if (cookies != null) {
    for (int i = 0; i < cookies.length; i++) { String tempuid_1 = cookies[i].getName();
    if (tempuid_1.equals("xabpoUsername")) {
    cookies[i].setMaxAge(0);
    response.addCookie(cookies[i]);
    }
    if (tempuid_1.equals("xabpoPassword")) {
    cookies[i].setMaxAge(0);
    response.addCookie(cookies[i]);
    }

    }
    }
      

  4.   

    把创建cookie的代码也发上来
    创建cookie的代码:Cookie cookieUsername = new Cookie("xabpoUsername",userForm.getUserID());
    Cookie cookiePassword = new Cookie("xabpoPassword",userForm.getPassword());
    cookieUsername.setMaxAge(60*60*2);
    cookiePassword.setMaxAge(60*60*2);
    cookieUsername.setPath("/");
    cookiePassword.setPath("/");
    response.addCookie(cookieUsername);
    response.addCookie(cookiePassword);
    删除cookie的代码:
    if (cookies != null) {
    for (int i = 0; i < cookies.length; i++) { String cookieName = cookies[i].getName();
    if ((cookieName.equals("xabpoUsername"))
    || (cookieName.equals("xabpoPassword"))) {
    cookies[i].setValue(null);
    cookies[i].setMaxAge(0);
    response.addCookie(cookies[i]);
    }
    }
    为什么删除后刚开始创建的cookie纹丝不动呢?异常郁闷,高人指点