文档

Java™ 教程-Java Tutorials 中文版
CookieHandler 回调机制
Trail: Custom Networking
Lesson: Working With Cookies

CookieHandler 回调机制

HTTP 状态管理在 Java SE 中通过 java.net.CookieHandler 类实现。CookieHandler 对象提供了一种回调机制,用于在 HTTP 协议处理程序中提供 HTTP 状态管理策略实现。也就是说,使用 HTTP 作为协议的 URL,例如 new URL("http://example.com") 将使用 HTTP 协议处理程序。此协议处理程序回调 CookieHandler 对象(如果已设置)以处理状态管理。

CookieHandler 类是一个抽象类,它有两对相关的方法。第一对 getDefault()setDefault(cookieHandler) 是静态方法,使你能够发现已安装的当前处理程序和安装自己的处理程序。

没有安装默认处理程序,安装处理程序是在系统范围内完成的。对于在安全环境中运行的应用程序,即安装了安全管理器的应用程序,你必须具有获取和设置处理程序的特殊权限。有关更多信息,请参阅 java.net.CookieHandler.getDefault

第二对相关方法 put(uri, responseHeaders)get(uri, requestHeaders),使你能够在响应/请求头中为指定的 URI,分别将所有适用的 cookie 设置到缓存,及从 cookie 缓存中获取 cookie。这些方法是抽象的,CookieHandler 的具体实现必须提供实现。

Java Web Start 和 Java Plug-in 安装了默认的 CookieHandler。但是,如果你正在运行独立应用程序并且想要启用 HTTP 状态管理,则必须设置系统范围的处理程序。本课程接下来的两页将向你展示如何操作。


Previous page: HTTP State Management With Cookies
Next page: Default CookieManager