1

我在 Servlet 中设置 Cookie,如下所示

  Cookie NameCookie = new Cookie("Name", "Mugil Vannan");         
  NameCookie.setMaxAge(30*60);
  response.addCookie(NameCookie);

  Cookie LocationCookie = new Cookie("Location", "India");
  LocationCookie.setMaxAge(30*60);
  response.addCookie(LocationCookie);

设置 cookie 后,我正在尝试访问名称下的特定 cookie 集

Cookie[] cookies = request.getCookies();            


  for (int i = 0; i < cookies.length; i++) 
  {
        Cookie cookie = cookies[i].getName().equals("Name");

        String cookieName  = cookie.getName();
        String cookieValue = cookie.getValue();
        out.print(cookieValue);
  }

现在它显示为TypeMismatch:Cannot Convert Boolean to Cookie at

cookies[i].getName().equals("姓名");

知道为什么会这样

4

2 回答 2

1

我认为这是你的问题Cookie cookie = cookies[i].getName().equals("Name");

你的意思是:

Cookie cookie = cookies[i];
if (cookie.getName().equals("Name")) {
    String cookieName  = cookie.getName();
    String cookieValue = cookie.getValue();
    out.print(cookieValue);
}
于 2013-02-11T16:20:47.203 回答
0

一旦您在 cookie 上完成声明,您无需再次声明即可访问您所写的键为“名称”的 cookie。

if(cookie[i].getName().equals("Name")){
    String cookieName  = cookie.getName();
    String cookieValue = cookie.getValue();
    out.print(cookieValue);
}

这将显示 cookie 值 where key(name) = "Name"

于 2016-08-28T12:26:08.263 回答