簡體   English   中英

在Play + Java中迭代Cookie

[英]Iterating cookies in Play+Java

我一直在研究管理Play應用程序存儲的Cookie。 理想情況下,我想為該用戶迭代所有cookie,並根據某些條件有選擇地刪除一些cookie。 不過,在此之前,我想簡單地迭代cookie以查看它們,例如:

for (Http.Cookie cookie : Http.Context.current().response().cookies()) {
    Logger.info("cookie " + cookie.name());
}

即使我們在應用程序的許多其他地方高效地使用cookie,cookie()卻一無所獲。 如果我查看cookies()。size,它是0。我打開了Web檢查器,顯示了15-20個可用的cookie。 我使用了錯誤的命令嗎?

我對此進行了進一步調查,有時還得到了一些cookie,但在Web檢查器中看不到的20道菜中,從來沒有超過1個或2個。 我能夠驗證這些cookie是否正在其他位置讀取。 我什至可以在迭代器中不顯示.get(name)特定的cookie。

您正在從響應而非請求中讀取Cookie。 響應將僅顯示您在當前請求中設置的cookie,因為僅在設置cookie時才在響應中發送cookie。 如果要查看所有傳入的cookie,則需要遍歷請求中的cookie:

for (Http.Cookie cookie : Http.Context.current().request().cookies()) {
    Logger.info("cookie " + cookie.name());
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM