モジュール java.base
パッケージ java.net

クラスCookieHandler

java.lang.Object
java.net.CookieHandler
直系の既知のサブクラス:
CookieManager

public abstract class CookieHandler
extends Object
CookieHandlerオブジェクトは、HTTPプロトコル・ハンドラにHTTP状態管理ポリシー実装を組み込むためのコールバック・メカニズムを提供します。 HTTP状態管理メカニズムは、HTTPの要求と応答を使ってステートフル・セッションを作成する方法を指定します。

「HTTP URLストリーム・プロトコル・ハンドラ」が使用するシステム全体のCookieHandlerは、CookieHandler.setDefault(CookieHandler)を実行することによって登録できます。 現在登録されているCookieHandlerを取得するには、CookieHandler.getDefault()を呼び出します。 HTTP状態管理の詳細については、RFC 2965: HTTP State Management Mechanismを参照してください。

導入されたバージョン:
1.5
  • コンストラクタのサマリー

    コンストラクタ 
    コンストラクタ 説明
    CookieHandler()  
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    abstract Map<String,​List<String>> get​(URI uri, Map<String,​List<String>> requestHeaders)
    要求ヘッダー内に指定されたURIのCookieキャッシュから適用可能なすべてのCookieを取得します。
    static CookieHandler getDefault()
    システム全体のCookieハンドラを取得します。
    abstract void put​(URI uri, Map<String,​List<String>> responseHeaders)
    応答ヘッダー内に存在するSet-Cookie2という名前の応答ヘッダー・フィールドなど、適用可能なすべてのCookieをCookieキャッシュ内に設定します。
    static void setDefault​(CookieHandler cHandler)
    システム全体のCookieハンドラを設定(または設定解除)します。

    クラス java.lang.Objectで宣言されたメソッド

    cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait
  • コンストラクタの詳細

  • メソッドの詳細

    • getDefault

      public static CookieHandler getDefault()
      システム全体のCookieハンドラを取得します。
      戻り値:
      システム全体のCookieハンドラ。nullが返された場合、それは、システム全体のCookieハンドラが現在設定されていないことを意味する。
      例外:
      SecurityException - セキュリティ・マネージャがインストールされていて、それがNetPermission(「getCookieHandler」)を拒否した場合
      関連項目:
      setDefault(CookieHandler)
    • setDefault

      public static void setDefault​(CookieHandler cHandler)
      システム全体のCookieハンドラを設定(または設定解除)します。 注: 標準でないHTTPプロトコル・ハンドラは、この設定を無視する可能性があります。
      パラメータ:
      cHandler - HTTP Cookieハンドラ。設定解除する場合はnull
      例外:
      SecurityException - セキュリティ・マネージャがインストールされていて、それがNetPermission(「setCookieHandler」)を拒否した場合
      関連項目:
      getDefault()
    • get

      public abstract Map<String,​List<String>> get​(URI uri, Map<String,​List<String>> requestHeaders) throws IOException
      要求ヘッダー内に指定されたURIのCookieキャッシュから適用可能なすべてのCookieを取得します。

      引数として渡されるURIは、Cookieの使用目的を指定します。 たとえば、スキームにはCookieがhttpまたはhttpsのどちらで送信されるのかや、Javascriptなどの別のコンテキストで使用されるのかを反映するべきです。 ホスト部分にはCookieの転送先またはJavascriptの場合はそれらのオリジンを反映するべきです。

      どれを返すかを決定する際に、URIおよびCookieの属性とセキュリティ設定を考慮することは、実装に任されています。

      HTTPプロトコルの実装者は、Cookieの選択に関係するすべての要求ヘッダーが追加されてから要求が送信されるまでの間に、必ずこのメソッドが呼び出されるようにしてください。

      パラメータ:
      uri - Cookieの使用目的を表すURI
      requestHeaders - 現在の要求ヘッダーを表す、要求ヘッダー・フィールド名からフィールド値のリストへのマップ
      戻り値:
      フィールド名「Cookie」または「Cookie2」を持つ状態管理ヘッダーから状態情報が格納されたCookieのリストへの不変のマップ
      例外:
      IOException - 入出力エラーが発生した場合
      IllegalArgumentException - どちらかの引数がnullの場合
      関連項目:
      put(URI, Map)
    • put

      public abstract void put​(URI uri, Map<String,​List<String>> responseHeaders) throws IOException
      応答ヘッダー内に存在するSet-Cookie2という名前の応答ヘッダー・フィールドなど、適用可能なすべてのCookieをCookieキャッシュ内に設定します。
      パラメータ:
      uri - Cookieの生成元のURI
      responseHeaders - 返された応答ヘッダー・フィールドを表す、フィールド名からフィールド値のリストへの不変のマップ
      例外:
      IOException - 入出力エラーが発生した場合
      IllegalArgumentException - どちらかの引数がnullの場合
      関連項目:
      get(URI, Map)