6.1 CookieManager

Som du allerede vet, kan http-serveren sende informasjonskapsler sammen med svaret, og du må jobbe med dem. Eller omvendt, http-serveren venter på at klienten skal sende den informasjonskapsler, og du må legge dem til i http-forespørselen din. Selvfølgelig kan du gjøre dette direkte gjennom overskriftene (behandlerne), men HttpClient tilbyr deg en mer praktisk mekanisme - CookieHandler. Du kan få det ved å bruke cookieHandler(). Eksempel:

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

CookieHandler er en abstrakt klasse, så det er vanlig å jobbe med CookieManager-implementeringen. Som igjen har bare et par metoder som du kan få CookieStore-objektet gjennom. Du kan jobbe med det i fremtiden:

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

CookieStore er et grensesnitt som har følgende metoder:

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

Jeg vil ikke gå gjennom dem i detalj, vi har allerede dekket HttpClient i detalj. Hvis du plutselig virkelig trenger det, kan du finne dokumentasjonen om CookieManager-klassen på lenkene:

Klasse Cookie Manager

CookieManager-klasse i Java

Custom CookieManager