我需要檢查cookie是否已添加到響應中。如果它不存在,只添加cookie到響應
我有一個奇怪的問題,我的回覆收到兩個Set-Cookie
頭。
Set-Cookie:foo=bar; Domain=dev.mysite.com; Expires=Fri, 05-May-2062 04:05:43 GMT; Path=/
Set-Cookie:foo=bar; Domain=dev.mysite.com; Expires=Fri, 05-May-2062 04:05:43 GMT; Path=/
的2頭是完全一樣的。當我調試堆棧時,調用此代碼兩次。這段代碼的翻倍是由於我使用的web棧,我不能改變。
我不在乎在請求中發送了哪些cookie,但我不希望這個頭文件發送兩次。
看起來似乎沒有簡單的方法來查找通過addHeader
方法添加的Cookie。
在調試期間,奇怪的是,如果我在response.addCookie(myCookie);
調用後檢查響應對象中的標題,我看不到Set-Cookie
標題。
有沒有一種方法,我只能添加一個cookie的響應,如果相同名稱的cookie尚未在響應中發送?
我不知道標準的方法。你可能需要使用HttpServletResponseWrapper解決這個問題,並記住那裏的cookies?! – home
是的,正如「家庭」 - (和AFAIR)所述,直到將回復發送給客戶(並作爲請求的一部分收回),您的程序將無法訪問這些Cookie。您唯一的選擇是「記住」您在響應代中已經設置了哪些cookie。 –