6.1 CookieManager
Tulad ng alam mo na, ang http server ay maaaring magpadala ng cookies kasama ng tugon, at kakailanganin mong makipagtulungan sa kanila. O vice versa, ang http server ay naghihintay para sa kliyente na ipadala ito Cookies at kailangan mong idagdag ang mga ito sa iyong kahilingan sa http. Siyempre, maaari mong gawin ito nang direkta sa pamamagitan ng mga header (mga handler), ngunit ang HttpClient ay nag-aalok sa iyo ng isang mas maginhawang mekanismo - ang CookieHandler
. Makukuha mo ito gamit ang cookieHandler()
. Halimbawa:
HttpClient client = HttpClient.newBuilder( URI.create("https://codegym.cc")).build();
CookieHandler handler = client.cookieHandler();
Ang CookieHandler ay isang abstract na klase, kaya karaniwan na gamitin ang pagpapatupad nito sa CookieManager. Na, sa turn, ay mayroon lamang ilang mga pamamaraan kung saan maaari mong makuha ang CookieStore object. Magagawa mo ito sa hinaharap:
HttpClient client = HttpClient.newBuilder( URI.create("https://codegym.cc")).build();
CookieHandler handler = client.cookieHandler();
CookieManager manager = (CookieManager) handler;
CookieStore store = manager.getCookieStore();
Ang CookieStore ay isang interface na may mga sumusunod na pamamaraan:
add()
get()
getCookies()
remove()
removeAll()
Hindi ko na sila susuriin nang detalyado, napag-usapan na namin nang detalyado ang HttpClient. Kung biglang kailangan mo ito, ang dokumentasyon sa klase ng CookieManager ay makikita sa mga link: