0

在我的 jsp 文件中,我正在设置一个我想保留一年的 cookie。我使用了设置的最大年龄并乘以我的秒数,所以它是一年。然而,cookie 只持续大约 5 分钟。即使我输入了一个大得离谱的值,它仍然只能持续约 5 分钟。

我正在本地主机上进行测试,这可能与它有关吗?

下面的代码:

    //value to check if the EU compliance cookie is present
boolean euCookiePresent = false;
//cookie parameters
String cookieName = "wtr_ca";
String cookieValue = "1";
int cookieExpiry = 365;

//cookie expiary is in seconds so convert to days
cookieExpiry = cookieExpiry * 60 * 60 * 24;

//Get clients cookies
Cookie cookies [] = request.getCookies ();

if (cookies != null){
    //iterate over users cookies to check for euCookie
    for (int i = 0; i < cookies.length; i++) 
    {
        if (cookies [i].getName().equals (cookieName)){
            euCookiePresent = true;
            break;
        }
    }

}

if (euCookiePresent == false){
    //no EU Cookie found therefore place it on client
    response.setContentType("text/html");
    Cookie cookie = new Cookie(cookieName,cookieValue);

    //cookie expiary is in seconds so convert to days
    cookie.setMaxAge(cookieExpiry);
    response.addCookie(cookie); 
}
4

2 回答 2

1
cookie.setMaxAge(60*60*24);

将最大年龄设置为大约 1 小时,没有一年

你想要做的是:

cookie.setMaxAge(cookieExpiry);
于 2012-09-13T09:27:04.253 回答
0

出于某种原因,Maven 不再将我的新代码放在服务器上,因此它仍在使用我的 365 秒,而不是将其转换为天的更新代码。

于 2012-09-13T12:49:28.007 回答