如何使用JSP删除cookie?

删除Cookie非常简单。如果您要删除Cookie,则只需执行以下三个步骤-

  • 读取一个已经存在的cookie并将其存储在Cookie对象中。

  • 使用setMaxAge()方法将cookie年龄设置为零,以删除现有的cookie。

  • 将此Cookie重新添加到响应标头中。

下面的示例将向您展示如何删除一个名为“ first_name”的现有cookie,并且当您下次运行main.jsp JSP时,它将为first_name返回null值。

示例

<html>
   <head>
      <title>Reading Cookies</title>
   </head>
   <body>
      <center>
         <h1>Reading Cookies</h1>
      </center>
      <%
         Cookie cookie = null;
         Cookie[] cookies = null;

         //获取与此域名关联的Cookie数组
         cookies = request.getCookies();

         if( cookies != null ) {
            out.println("<h2> Found Cookies Name and Value</h2>");
            for (int i = 0; i < cookies.length; i++) {
               cookie = cookies[i];
               if((cookie.getName( )).compareTo("first_name") == 0 ) {
                  cookie.setMaxAge(0);
                  response.addCookie(cookie);
                  out.print("Deleted cookie: " +
                  cookie.getName( ) + "<br/>");
               }
               out.print("Name : " + cookie.getName( ) + ", ");
               out.print("Value: " + cookie.getValue( )+" <br/>");
            }
         } else {
            out.println(
            "<h2>No cookies founds</h2>");
         }
      %>
   </body>
</html>

现在让我们将上面的代码放入main.jsp文件中,然后尝试访问它。它将显示以下结果-

输出结果

Cookies Name and Value
Deleted cookie : first_name
Name : first_name, Value: John
Name : last_name, Value: Player

现在再次运行http:// localhost:8080 / main.jsp ,它应该仅显示一个cookie,如下所示-

Found Cookies Name and Value
Name : last_name, Value: Player

您可以在Internet Explorer中手动删除Cookie。从“工具”菜单开始,然后选择“ Internet选项”。要删除所有cookie,请单击Delete Cookies按钮。