モジュール jdk.incubator.httpclient
パッケージ jdk.incubator.http

クラスHttpResponse<T>

  • 型パラメータ:
    T - レスポンス本文型

    public abstract class HttpResponse<T>
    extends Object
    HttpRequestへのレスポンスを表します。
    インキュベーション機能。将来のリリースで削除されます。

    HttpResponseは、レスポンス・ステータス・コードとヘッダーが受信されたとき、通常はレスポンス本文も受信された後で使用できます。 これは、リクエストを送信するときに提供されるレスポンス本文ハンドラに依存します。 すべてのケースで、レスポンス本文ハンドラは本文が読み込まれる前に呼び出されます。 これにより、アプリケーションは本文をどのように扱うかを決める機会が与えられます。

    このクラスには、レスポンス・ヘッダーとレスポンス本文にアクセスするためのメソッドが用意されています。

    レスポンス・ハンドラとサブスクライバ

    レスポンス機関は2つのレベルで扱われます。 アプリケーション・コードは、レスポンス・ハンドラ(HttpResponse.BodyHandler)を提供します。応答ハンドラ(HttpResponse.BodyHandler)は、レスポンス・ステータス・コードとヘッダーを調べてから、HttpResponse.BodySubscriberを返して実際に本文を読み込んで、有用なJavaオブジェクト型に変換します。 ハンドラは、あらかじめ定義されたサブスクライバ型またはカスタム・サブスクライバのいずれかを返すことができます。または、本文を破棄する場合は、discardを呼び出してレスポンス本文を破棄するサブスクライバを返すことができます。 ハンドラとサブスクライバの両方の静的な実装は、それぞれBodyHandlerBodySubscriberで提供されています。 すべてのケースにおいて、提供されるハンドラ関数は、提供されたステータス・コードとヘッダーを無視し、関連する事前定義された BodySubscriberを返す便利な実装です。

    使用例については、HttpResponse.BodyHandlerを参照してください。

    導入されたバージョン:
    9
    • コンストラクタの詳細

      • HttpResponse

        protected HttpResponse()
        HttpResponseを作成します。
    • メソッドの詳細

      • statusCode

        public abstract int statusCode()
        このレスポンスのステータス・コードを返します。
        戻り値:
        レスポンス・コード
      • request

        public abstract HttpRequest request()
        このレスポンスに対応するHttpRequestを返します。

        これは、たとえば、そのリクエストがリダイレクトされた場合など、呼び出し元によって提供された元のリクエストではない可能性があります。

        戻り値:
        リクエスト
        関連項目:
        previousResponse()
      • previousResponse

        public abstract Optional<HttpResponse<T>> previousResponse()
        以前の中間レスポンスを受信した場合はそれを含むOptionalを返します。 中間レスポンスは、リダイレクトまたは認証の結果として受信されるものです。 以前のレスポンスが受信されなかった場合、空のOptionalが返されます。
        戻り値:
        HttpResponseが含まれている場合は、オプションです。
      • headers

        public abstract HttpHeaders headers()
        受信したレスポンス・ヘッダーを返します。
        戻り値:
        レスポンス・ヘッダー
      • body

        public abstract T body()
        本文を返します。 Tのタイプに応じて、返された本文は、本文が(byte[]、またはString、またはPathなどの)の後に本文を表すか、本文が読み取られるオブジェクトを表すことがあります(InputStreamなど)。

        このHttpResponsepreviousResponse()の呼び出しから返された場合、このメソッドはnullを返します

        戻り値:
      • sslParameters

        public abstract SSLParameters sslParameters()
        このレスポンスのSSLParametersを返します。 これがHTTPSレスポンスでない場合は、nullを返します。
        戻り値:
        レスポンスに関連付けられたSSLParameters
      • uri

        public abstract URI uri()
        レスポンスを受け取ったURIを返します。 これは、リダイレクトが発生した場合、リクエストURIと異なる場合があります。
        戻り値:
        レスポンスのURI
      • version

        public abstract HttpClient.Version version()
        このレスポンスに使用されたHTTPプロトコルのバージョンを返します。
        戻り値:
        HTTPプロトコル・バージョン