我在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:无法将布尔值转换为Cookie
饼干[I] .getName()等于( “姓名”);
任何想法为什么会发生这种情况
答案 0 :(得分: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);
}
答案 1 :(得分:0)
一旦您的声明在Cookie上完成,您就不需要再次申报 密钥是&#34;名称&#34;就像你写的那样。
if(cookie[i].getName().equals("Name")){
String cookieName = cookie.getName();
String cookieValue = cookie.getValue();
out.print(cookieValue);
}
这将显示cookie值,其中key(name)=&#34; Name&#34;