почему cookie.getMaxAge () = -1? - PullRequest
1 голос
/ 18 июня 2010

У меня есть такой тест:

cookie.jsp:

<html>  
<head>
</head>  
<body>  
<%  
String cookieName="SNS";  
Cookie cookie=new Cookie(cookieName, "maxAgeTest");  
cookie.setMaxAge(60*60);  
response.addCookie(cookie);  
%>  
</body>  
</html>

и read.jsp:

<html>  
<head>
</head>  
<body>  
<table border=1>  
<tr><td>Name</td><td>value</td></tr>  
<%  
Cookie cookies[]=request.getCookies();  
Cookie sCookie=null;  
String svalue=null;  
String sname=null;  
int sage ; 
for(int i=0;i<cookies.length;i++)  
{  
sCookie=cookies[i];  
svalue=sCookie.getValue();  
sname=sCookie.getName();  
sage=sCookie.getMaxAge();
%>  
<tr><td><%=sname%></td><td><%=svalue%></td><td><%=sage%></td></tr>  
<%  
}  
%>  
</table>
</body>  
</html> 

, но результат:

Имя значения maxAge

JSESSIONID DB3561A47B37FCA8CA25EA04B80A26C7 -1

SNS maxAgeTest -1

почему maxAge равно -1?

и тест tIE8, Chrome5, Safari, результат тот же

Ответы [ 2 ]

4 голосов
/ 18 июня 2010

ты не получишь это. браузер отправляет только имя и значение куки, никакой другой информации.

2 голосов
/ 18 июня 2010

Потому что вы не установили MaxAge (используя setMaxAge).Таким образом, он будет иметь значение по умолчанию (-1).Это означает, что cookie будет сохраняться до закрытия браузера

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...