6.1 CookieManager
Som du redan vet kan http-servern skicka cookies tillsammans med svaret, och du måste arbeta med dem. Eller vice versa, http-servern väntar på att klienten ska skicka cookies till den och du måste lägga till dem i din http-förfrågan. Naturligtvis kan du göra detta direkt genom rubrikerna (hanterare), men HttpClient erbjuder dig en mer bekväm mekanism - CookieHandler
. Du kan få det med cookieHandler()
. Exempel:
HttpClient client = HttpClient.newBuilder( URI.create("https://codegym.cc")).build();
CookieHandler handler = client.cookieHandler();
CookieHandler är en abstrakt klass, så det är vanligt att arbeta med dess CookieManager-implementering. Som i sin tur bara har ett par metoder genom vilka du kan få CookieStore-objektet. Du kan arbeta med det i framtiden:
HttpClient client = HttpClient.newBuilder( URI.create("https://codegym.cc")).build();
CookieHandler handler = client.cookieHandler();
CookieManager manager = (CookieManager) handler;
CookieStore store = manager.getCookieStore();
CookieStore är ett gränssnitt som har följande metoder:
add()
get()
getCookies()
remove()
removeAll()
Jag kommer inte att gå igenom dem i detalj, vi har redan täckt HttpClient i detalj. Om du plötsligt verkligen behöver det, kan du hitta dokumentationen om klassen CookieManager på länkarna:
GO TO FULL VERSION