6.1 CookieManager

如您所知,http 服務器可以將 cookie 與響應一起發送,您將需要使用它們。反之亦然,http 服務器正在等待客戶端向其發送 Cookie,您需要將它們添加到您的 http 請求中。當然,您可以直接通過標頭(處理程序)執行此操作,但 HttpClient 為您提供了更方便的機制 - CookieHandler. 您可以使用cookieHandler(). 例子:

HttpClient client = HttpClient.newBuilder( URI.create("https://codegym.cc")).build();
CookieHandler handler = client.cookieHandler();

CookieHandler 是一個抽像類,因此使用它的 CookieManager 實現是很常見的。反過來,它只有幾個方法,您可以通過這些方法獲取 CookieStore 對象。您可以在將來使用它:

HttpClient client = HttpClient.newBuilder( URI.create("https://codegym.cc")).build();
CookieHandler handler = client.cookieHandler();
CookieManager manager = (CookieManager) handler;
CookieStore store = manager.getCookieStore();

CookieStore 是一個具有以下方法的接口:

  • add()
  • get()
  • getCookies()
  • remove()
  • removeAll()

我不會詳細介紹它們,我們已經詳細介紹了 HttpClient。如果突然間您真的需要它,那麼可以在以下鏈接中找到有關 CookieManager 類的文檔:

類 Cookie 管理器

Java 中的 CookieManager 類

自定義 CookieManager