- java.lang.Object
-
- jdk.incubator.http.HttpResponse<T>
-
- 型パラメータ:
T
- レスポンス本文型
public abstract class HttpResponse<T> extends Object
HttpRequest
へのレスポンスを表します。
インキュベーション機能。将来のリリースで削除されます。HttpResponse
は、レスポンス・ステータス・コードとヘッダーが受信されたとき、通常はレスポンス本文も受信された後で使用できます。 これは、リクエストを送信するときに提供されるレスポンス本文ハンドラに依存します。 すべてのケースで、レスポンス本文ハンドラは本文が読み込まれる前に呼び出されます。 これにより、アプリケーションは本文をどのように扱うかを決める機会が与えられます。このクラスには、レスポンス・ヘッダーとレスポンス本文にアクセスするためのメソッドが用意されています。
レスポンス・ハンドラとサブスクライバ
レスポンス機関は2つのレベルで扱われます。 アプリケーション・コードは、レスポンス・ハンドラ(
HttpResponse.BodyHandler
)を提供します。応答ハンドラ(HttpResponse.BodyHandler
)は、レスポンス・ステータス・コードとヘッダーを調べてから、HttpResponse.BodySubscriber
を返して実際に本文を読み込んで、有用なJavaオブジェクト型に変換します。 ハンドラは、あらかじめ定義されたサブスクライバ型またはカスタム・サブスクライバのいずれかを返すことができます。または、本文を破棄する場合は、discard
を呼び出してレスポンス本文を破棄するサブスクライバを返すことができます。 ハンドラとサブスクライバの両方の静的な実装は、それぞれBodyHandlerとBodySubscriberで提供されています。 すべてのケースにおいて、提供されるハンドラ関数は、提供されたステータス・コードとヘッダーを無視し、関連する事前定義されたBodySubscriber
を返す便利な実装です。使用例については、
HttpResponse.BodyHandler
を参照してください。- 導入されたバージョン:
- 9
-
-
ネストされたクラスのサマリー
ネストされたクラス 修飾子と型 クラス 説明 static interface
HttpResponse.BodyHandler<T>
レスポンス本文のハンドラ。static interface
HttpResponse.BodySubscriber<T>
レスポンス主体のサブスクライバ。static interface
HttpResponse.MultiSubscriber<U,T>
HTTP/2マルチ・レスポンスの応答サブスクライバ。
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protected
HttpResponse()
HttpResponseを作成します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド 修飾子と型 メソッド 説明 abstract T
body()
本文を返します。abstract HttpHeaders
headers()
受信したレスポンス・ヘッダーを返します。abstract Optional<HttpResponse<T>>
previousResponse()
以前の中間レスポンスを受信した場合はそれを含むOptional
を返します。abstract HttpRequest
request()
このレスポンスに対応するHttpRequest
を返します。abstract SSLParameters
sslParameters()
このレスポンスのSSLParameters
を返します。abstract int
statusCode()
このレスポンスのステータス・コードを返します。abstract URI
uri()
レスポンスを受け取ったURI
を返します。abstract HttpClient.Version
version()
このレスポンスに使用されたHTTPプロトコルのバージョンを返します。
-
-
-
メソッドの詳細
-
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
など)。この
HttpResponse
がpreviousResponse()
の呼び出しから返された場合、このメソッドは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プロトコル・バージョン
-
-