【问题标题】:How to delete Cookies from different path?如何从不同路径删除 Cookie?
【发布时间】:2015-08-24 02:39:34
【问题描述】:

我想通过我写的Java代码删除一个Cookie,

Cookie[] cookies = request.getCookies();  //request - HttpServletRequest  
for (int i = 0; i < cookies.length; i++) {  
    if (cookies[i].getName().equals("cam_passport")) {  
        cookies[i].setMaxAge(0);     
        cookies[i].setValue("");  
        response.addCookie(cookies[i]);  
    }  
}  

我正在“cookies”对象中获取 cookie 列表,但不是必需的“cam_passport”。 我观察到的是,当我在 Mozilla 中检查时,这个 Cookie 的 PATH 是不同的。 其中,我在“cookies”对象中获取的 cookie 列表的路径为“/”。 而且,对于这个“cam_passport”cookie,路径是“/cognos10”。

我每次都需要在一个实例中删除上述 cookie。如何获取上述不同路径的 Cookie?

【问题讨论】:

    标签: java servlets cookies


    【解决方案1】:

    您需要向该路径发送重定向,可能还需要一个请求参数。然后,您可以在精确映射到该路径的 servlet 或过滤器中获取 cookie 并在必要时根据请求参数的存在将其删除。最后,您可以根据请求参数重定向回原始 URL。

    以后,如果您需要 cookie 在整个 Web 应用程序中可用,请在创建 cookie 期间使用cookie.setPath("/")

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-21
      • 2012-05-19
      相关资源
      最近更新 更多