background image

 

 一个 CookieManager 

 

里面有一个 CookieStore  

 

和一个 CookiePolicy,分别负责储存 

Cookie 

 

和规定策略。用户可以指定两者,也可以使用系统默认的 CookieManger。

  例子

 

  下面这个简单的例子说明了 Cookie 相关的管理功能:

以下是引用片段:

// 

 

创建一个默认的 CookieManager

CookieManager manager = new CookieManager();

// 

 

将规则改掉,接受所有的 Cookie

manager.setCookiePolicy(CookiePolicy.ACCEPT_ALL);

// 

 

保存这个定制的 CookieManager

CookieHandler.setDefault(manager);
        
// 

 

接受 HTTP 

 

请求的时候,得到和保存新的 Cookie

HttpCookie cookie = new HttpCookie("...(name)...","...(value)...");
manager.getCookieStore().add(uri, cookie);
        
// 

 

使用 Cookie 的时候:

// 

 

取出 CookieStore        

CookieStore store = manager.getCookieStore();

// 

 

得到所有的 URI        

List<URI> uris = store.getURIs();
for (URI uri : uris) {
    // 

 

筛选需要的 URI

    // 

 

得到属于这个 URI 

 

的所有 Cookie

    List<HttpCookie> cookies = store.get(uri);
    for (HttpCookie cookie : cookies) {