2016-10-27 5 views
0

私は既存のCookieの値を編集しようとしていますが、無駄です。私は冷たいクッキーを削除し、新しい価値を持つ新しいものを作成しようと試みましたが、それでもその作業はありませんでした。クッキーを編集するためのコードスニペット:Javaの既存のCookieを編集する

Cookie modifyCookie= new Cookie(cookie.getName(), newValue) 
modifyCookie.setMaxAge(30000) 
modifyCookie.setPath("/") 
response.addCookie(modifyCookie) 

削除して新しいものを作成: //が古い

新しいもの

Cookie newCookie = new Cookie(newCookieName, newValue 
newCookie.setMaxAge(30000) 
newCookie.setPath("/") 
response.addCookie(newCookie) 

どちらも作成

Cookie oldCookie = new Cookie(cookie.getName(), null) 
oldCookie.setMaxAge(0); 
oldCookie.setPath("/") 
response.addCookie(oldCookie); 

//を削除します既存のCookieが変更されることも、古いCookieが削除されることも、新しいCookieが削除されることもなく、新しいCookieが作成されることもあります。

あなたは何が欠けているか教えていただけますか?

答えて

0

@rukavitsya あなたのご意見ありがとうございます。

問題は、応答が送信された後に応答にCookieを追加していたことです。したがって、Cookieは後続のリクエストに反映されませんでした。予想通り、私は応答を送信する前にクッキーを編集し

Cookie oldCookie = new Cookie(cookie.getName(), newValue) 
oldCookie.setMaxAge(30000); 
oldCookie.setPath("/") 
oldCookie.setDomain("domain.com") 
response.addCookie(oldCookie); 

は、物事が働いた: 私はfollの方法で、既存のクッキーを編集しました。

関連する問題