- java.lang.Object
-
- jdk.incubator.http.HttpRequest.Builder
-
- 含まれているクラス:
- HttpRequest
public abstract static class HttpRequest.Builder extends Object
「HTTPリクエスト」の作成者。
インキュベーション機能。将来のリリースで削除されます。HttpRequest.Builderのインスタンスは、HttpRequest.newBuilder(URI)またはHttpRequest.newBuilder()を呼び出すことによって作成されます。このクラスの各セッター・メソッドは、ビルダーの状態を変更し、this (すなわち、同じインスタンス)を返します。 メソッドは同期されておらず、外部同期なしで複数のスレッドから呼び出されるべきではありません。
すべてのリクエスト・ヘッダーがユーザー・コードによって設定されるわけではないことに注意してください。 セキュリティ上の理由から制限されているものと、認証、リダイレクト、およびCookie管理に関連するヘッダーなどのその他のものは、直接ユーザー・セット・ヘッダーではなく特定のAPIによって管理されます。
buildメソッドは、呼び出されるたびに新しい
HttpRequestを返します。- 導入されたバージョン:
- 9
-
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protectedBuilder()Builderを作成します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド 修飾子と型 メソッド 説明 abstract HttpRequestbuild()HttpRequestを構築して返します。abstract HttpRequest.Buildercopy()現在の状態に基づいて、このBuilderの正確な複製コピーを返します。abstract HttpRequest.BuilderDELETE(HttpRequest.BodyPublisher bodyPublisher)このBuilderのリクエスト・メソッドをDELETEに設定し、リクエストボディ・パブリッシャを指定された値に設定します。abstract HttpRequest.BuilderexpectContinue(boolean enable)サーバーが本文を送信する前にリクエストを確認するようリクエストします。abstract HttpRequest.BuilderGET()このBuilderのリクエスト・メソッドをGETに設定します。abstract HttpRequest.Builderheader(String name, String value)指定された名前の値のペアをこのリクエストのヘッダーのセットに追加します。abstract HttpRequest.Builderheaders(String... headers)指定された名前の値のペアをこのリクエストのヘッダーのセットに追加します。abstract HttpRequest.Buildermethod(String method, HttpRequest.BodyPublisher bodyPublisher)このBuilderのリクエスト・メソッドとリクエスト本文を指定された値に設定します。abstract HttpRequest.BuilderPOST(HttpRequest.BodyPublisher bodyPublisher)このBuilderのリクエスト・メソッドをPOSTに設定し、リクエストボディ・パブリッシャを指定された値に設定します。abstract HttpRequest.BuilderPUT(HttpRequest.BodyPublisher bodyPublisher)このBuilderのリクエスト・メソッドをPUTに設定し、リクエストボディ・パブリッシャを指定された値に設定します。abstract HttpRequest.BuildersetHeader(String name, String value)指定された名前の値のペアを、このリクエストのヘッダーのセットに設定します。abstract HttpRequest.Buildertimeout(Duration duration)このリクエストのタイムアウトを設定します。abstract HttpRequest.Builderuri(URI uri)このHttpRequestリクエストURIを設定します。abstract HttpRequest.Builderversion(HttpClient.Version version)このリクエストに優先するHttpClient.Versionを設定します。
-
-
-
メソッドの詳細
-
uri
public abstract HttpRequest.Builder uri(URI uri)
このHttpRequestリクエストURIを設定します。- パラメータ:
uri- リクエストURI- 戻り値:
- このリクエスト・ビルダー
- 例外:
IllegalArgumentException-URIスキームがサポートされていない場合
-
expectContinue
public abstract HttpRequest.Builder expectContinue(boolean enable)
サーバーが本文を送信する前にリクエストを確認するようリクエストします。 デフォルトでは、出力が無効化されます。 有効にすると、クライアントがリクエスト本文を送信する前に、サーバーはエラー・レスポンスまたは100 Continueレスポンスを送信するようリクエストされます。 これは、この暫定的なレスポンスが受信されるまでリクエストの発行元が呼び出されないことを意味します。- パラメータ:
enable- Expectを引き続き送信する場合はtrue- 戻り値:
- このリクエスト・ビルダー
-
version
public abstract HttpRequest.Builder version(HttpClient.Version version)
このリクエストに優先するHttpClient.Versionを設定します。対応する
HttpResponseは、実際に使用されたバージョンを確認する必要があります。 リクエストにバージョンが設定されていない場合、リクエストされたバージョンは送信するHttpClientのバージョンになります。- パラメータ:
version- リクエストされたHTTPプロトコルのバージョン- 戻り値:
- このリクエスト・ビルダー
-
header
public abstract HttpRequest.Builder header(String name, String value)
指定された名前の値のペアをこのリクエストのヘッダーのセットに追加します。 指定された値がその名前の値のリストに追加されます。- パラメータ:
name- ヘッダー名value- ヘッダー値- 戻り値:
- このリクエスト・ビルダー
- 例外:
IllegalArgumentException- ヘッダー名または値が有効でない場合は、「RFC 7230セクション-3.2」を参照してください。
-
headers
public abstract HttpRequest.Builder headers(String... headers)
指定された名前の値のペアをこのリクエストのヘッダーのセットに追加します。 提供されたStringインスタンスは、ヘッダー名とヘッダー値として代替する必要があります。 同じ名前に複数の値を追加するには、新しい名前ごとに同じ名前を指定する必要があります。- パラメータ:
headers- 名前値のペアのリスト- 戻り値:
- このリクエスト・ビルダー
- 例外:
IllegalArgumentException- 奇数個のパラメータがある場合、またはヘッダー名または値が有効でない場合は、「RFC 7230セクション-3.2」を参照してください。
-
timeout
public abstract HttpRequest.Builder timeout(Duration duration)
このリクエストのタイムアウトを設定します。 レスポンスが指定されたタイムアウト内に受信されない場合、HttpTimeoutExceptionはHttpClient::sendからスローされるか、またはHttpClient::sendAsyncは例外的にHttpTimeoutExceptionで完了します。 タイムアウトを設定しない場合の効果は、無限の持続時間を設定する場合と同じです。永遠にブロックします。- パラメータ:
duration- タイムアウト期間- 戻り値:
- このリクエスト・ビルダー
- 例外:
IllegalArgumentException- 期間が非正の場合
-
setHeader
public abstract HttpRequest.Builder setHeader(String name, String value)
指定された名前の値のペアを、このリクエストのヘッダーのセットに設定します。 これにより、以前に設定されたnameの値が上書きされます。- パラメータ:
name- ヘッダー名value- ヘッダー値- 戻り値:
- このリクエスト・ビルダー
- 例外:
IllegalArgumentException- ヘッダー名または値が有効でない場合は、「RFC 7230セクション-3.2」を参照してください。
-
GET
public abstract HttpRequest.Builder GET()
このBuilderのリクエスト・メソッドをGETに設定します。 これはデフォルトです。- 戻り値:
HttpRequest
-
POST
public abstract HttpRequest.Builder POST(HttpRequest.BodyPublisher bodyPublisher)
このBuilderのリクエスト・メソッドをPOSTに設定し、リクエストボディ・パブリッシャを指定された値に設定します。- パラメータ:
bodyPublisher- ボディ・パブリッシャ- 戻り値:
HttpRequest
-
PUT
public abstract HttpRequest.Builder PUT(HttpRequest.BodyPublisher bodyPublisher)
このBuilderのリクエスト・メソッドをPUTに設定し、リクエストボディ・パブリッシャを指定された値に設定します。- パラメータ:
bodyPublisher- ボディ・パブリッシャ- 戻り値:
HttpRequest
-
DELETE
public abstract HttpRequest.Builder DELETE(HttpRequest.BodyPublisher bodyPublisher)
このBuilderのリクエスト・メソッドをDELETEに設定し、リクエストボディ・パブリッシャを指定された値に設定します。- パラメータ:
bodyPublisher- ボディ・パブリッシャ- 戻り値:
HttpRequest
-
method
public abstract HttpRequest.Builder method(String method, HttpRequest.BodyPublisher bodyPublisher)
このBuilderのリクエスト・メソッドとリクエスト本文を指定された値に設定します。- APIの注:
- noBodyリクエストボディ・パブリッシャは、リクエスト本文が必要ない場合や適切でない場合に使用できます。
- パラメータ:
method- 使用するメソッドbodyPublisher- ボディ・パブリッシャ- 戻り値:
HttpRequest- 例外:
IllegalArgumentException- メソッドが認識されない場合
-
build
public abstract HttpRequest build()
HttpRequestを構築して返します。- 戻り値:
- リクエスト
- 例外:
IllegalStateException- URIが設定されていない場合
-
copy
public abstract HttpRequest.Builder copy()
現在の状態に基づいて、このBuilderの正確な複製コピーを返します。 新しいビルダーは、このビルダーとは独立して変更できます。- 戻り値:
- このビルダーの正確なコピー
-
-