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 类的文档: