- java.lang.Object
-
- java.net.http.HttpRequest
-
public abstract class HttpRequest extends Object
HTTPリクエスト。HttpRequest
インスタンスは、HttpRequest
builderを介して構築されます。HttpRequest
ビルダーは、newBuilder
メソッドのいずれかから取得されます。 リクエストURI
、ヘッダーおよび本文を設定できます。 リクエスト本体は、POST
、PUT
またはmethod
メソッドの1つに提供されているBodyPublisher
を介して提供されます。 必要なパラメータがすべてビルダーに設定されると、build
はHttpRequest
を返します。 一部のパラメータが異なる複数の関連リクエストを作成するために、ビルダーを何度でもコピーおよび変更できます。レスポンス本文を文字列として出力するGETリクエストの例を次に示します。
HttpClient client = HttpClient.newHttpClient(); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("http://foo.com/")) .build(); client.sendAsync(request, BodyHandlers.ofString()) .thenApply(HttpResponse::body) .thenAccept(System.out::println) .join();
クラス
BodyPublishers
は、多くの共通パブリッシャの実装を提供します。 または、カスタムBodyPublisher
の実装を使用できます。- 導入されたバージョン:
- 11
-
-
ネストされたクラスのサマリー
ネストされたクラス 修飾子と型 クラス 説明 static interface
HttpRequest.BodyPublisher
BodyPublisher
は、上位レベルのJavaオブジェクトをリクエスト本文として送信するのに適したバイト・バッファのフローに変換します。static class
HttpRequest.BodyPublishers
Stringからのリクエスト本文の公開やファイルからの公開など、各種の便利なパブリッシャを実装するBodyPublisher
の実装。static interface
HttpRequest.Builder
「HTTPリクエスト」のビルダー。
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protected
HttpRequest()
HttpRequestを作成します。
-
メソッドのサマリー
すべてのメソッド staticメソッド インスタンス・メソッド 抽象メソッド 具象メソッド 修飾子と型 メソッド 説明 abstract Optional<HttpRequest.BodyPublisher>
bodyPublisher()
このリクエストで設定されたHttpRequest.BodyPublisher
を含むOptional
を返します。boolean
equals(Object obj)
このHTTPリクエスト・インスタンスが指定されたオブジェクトと等しいかどうかをテストします。abstract boolean
expectContinue()
このリクエスト「続行の予定」設定を返します。int
hashCode()
このHTTPリクエスト・インスタンスのハッシュ・コードを計算します。abstract HttpHeaders
headers()
(user-accessible)リクエスト・ヘッダーは、このリクエストが送信された(または)でした。abstract String
method()
このリクエストのリクエスト・メソッドを返します。static HttpRequest.Builder
newBuilder()
HttpRequest
ビルダーを作成します。static HttpRequest.Builder
newBuilder(URI uri)
指定されたURIのHttpRequest
ビルダーを作成します。abstract Optional<Duration>
timeout()
このリクエスト・タイムアウト期間を含むOptional
を返します。abstract URI
uri()
このリクエストURI
を返します。abstract Optional<HttpClient.Version>
version()
このHttpRequest
にリクエストされるHTTPプロトコル・バージョンを含むOptional
を返します。
-
-
-
メソッドの詳細
-
newBuilder
public static HttpRequest.Builder newBuilder(URI uri)
指定されたURIのHttpRequest
ビルダーを作成します。- パラメータ:
uri
- リクエストURI- 戻り値:
- 新しいリクエスト・ビルダー
- 例外:
IllegalArgumentException
- URIスキームがサポートされていない場合。
-
newBuilder
public static HttpRequest.Builder newBuilder()
HttpRequest
ビルダーを作成します。- 戻り値:
- 新しいリクエスト・ビルダー
-
bodyPublisher
public abstract Optional<HttpRequest.BodyPublisher> bodyPublisher()
このリクエストで設定されたHttpRequest.BodyPublisher
を含むOptional
を返します。BodyPublisher
がリクエスト・ビルダーに設定されていない場合、Optional
は空です。- 戻り値:
- このリクエストを含む
Optional
BodyPublisher
-
method
public abstract String method()
このリクエストのリクエスト・メソッドを返します。 明示的に設定されていない場合、任意のリクエストに対するデフォルトのメソッドは"GET"です。- 戻り値:
- このリクエスト・メソッド
-
timeout
public abstract Optional<Duration> timeout()
このリクエスト・タイムアウト期間を含むOptional
を返します。 リクエスト・ビルダーでタイムアウト時間が設定されていない場合、Optional
は空です。- 戻り値:
- このリクエスト・タイムアウト時間を含む
Optional
-
expectContinue
public abstract boolean expectContinue()
このリクエスト「続行の予定」設定を返します。- 戻り値:
- このリクエストは設定を続けることを期待しています
-
uri
public abstract URI uri()
このリクエストURI
を返します。- 戻り値:
- このリクエストURI
-
version
public abstract Optional<HttpClient.Version> version()
このHttpRequest
にリクエストされるHTTPプロトコル・バージョンを含むOptional
を返します。 リクエスト・ビルダーにバージョンが設定されていない場合、Optional
は空です。 その場合、リクエストされたバージョンは送信するHttpClient
のバージョンになります。 実際に使用されたバージョンを確認するには、対応するHttpResponse
を問合せする必要があります。- 戻り値:
- HTTPプロトコル・バージョン
-
headers
public abstract HttpHeaders headers()
(user-accessible)リクエスト・ヘッダーは、このリクエストが送信された(または)でした。- 戻り値:
- このリクエストHttpHeaders
-
equals
public final boolean equals(Object obj)
このHTTPリクエスト・インスタンスが指定されたオブジェクトと等しいかどうかをテストします。指定されたオブジェクトが
HttpRequest
でない場合、このメソッドはfalse
を返します。 URI、メソッド、およびヘッダー・フィールドがすべて等しい場合、2つのHTTPリクエストは等しいです。このメソッドは
Object.equals
メソッドの汎用規約を満たします。- オーバーライド:
equals
、クラスObject
- パラメータ:
obj
- このオブジェクトが比較されるオブジェクト- 戻り値:
- 指定されたオブジェクトがこのHTTPリクエストと等しい
HttpRequest
である場合にのみtrue
- 関連項目:
Object.hashCode()
、HashMap
-
hashCode
public final int hashCode()
このHTTPリクエスト・インスタンスのハッシュ・コードを計算します。ハッシュ・コードは、HTTPリクエストのURI、メソッド、およびヘッダー・コンポーネントに基づいており、
Object.hashCode
メソッドの汎用規約を満たしています。- オーバーライド:
hashCode
、クラスObject
- 戻り値:
- このHTTPリクエストのハッシュ・コード値
- 関連項目:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
-