我有一個cookie,myCookie
,包含的哈希值。此Cookie設置爲在一年內過期並具有「/」的路徑。我需要用新的哈希值更新這個cookie。當我的JSP腳本加載檢索到的cookie,像這樣:如何更新JSP中的現有cookie?
Cookie[] cookies = request.getCookies();
Cookie myCookie = null;
for (int i = 0; i < cookies.length; i += 1) {
if (cookies[i].getName().equals("myCookie")) {
myCookie = cookies[i];
break;
}
}
確定該cookie的值需要更新後,我做了以下內容更新:
myCookie.setValue("my new value");
response.addCookie(myCookie);
審視結果,我現在有myCookie
兩個實例:原始版本與正確的到期日和路徑,與舊的,無效的價值;和一個新的cookie命名爲「的myCookie」,使用期限在會議結束時,用正確的值,JSP文件的路徑。
如果我做的:
myCookie.setValue("my new value");
myCookie.setPath(myCookie.getPath());
myCookie.setMaxAge(myCookie.getMaxAge());
response.addCookies(myCookie);
的同樣的事情發生。我得到了兩個具有相同名稱和不同屬性的Cookie。
做一個Cookie對象不保留從當它被檢索的屬性?我怎樣才能更新這個cookie?
注意:我不想修改路徑或過期日期。我只想更新已經設置的cookie的值。
在看看:http://stackoverflow.com/questions/4863740/change-cookie-expiry-date- http – Ralph 2011-02-23 16:03:01
@Ralph,這應該怎麼幫助我? – 2011-02-23 16:04:02
你的域名和路徑是否一樣? – Ralph 2011-02-23 16:04:54