パッケージ org.springframework.http

クラス RequestEntity<T>

java.lang.ObjectSE
org.springframework.http.HttpEntity<T>
org.springframework.http.RequestEntity<T>
型パラメーター:
T - ボディ型
既知の直属サブクラス
RequestEntity.UriTemplateRequestEntity

public class RequestEntity<T> extends HttpEntity<T>
HTTP メソッドとターゲット URL も公開する HttpEntity の拡張。RestTemplate で使用してリクエストを準備し、@Controller メソッドでリクエスト入力を表します。

RestTemplate での使用例:

 MyRequest body = ...
 RequestEntity<MyRequest> request = RequestEntity
     .post("https://example.com/{foo}", "bar")
     .accept(MediaType.APPLICATION_JSON)
     .body(body);
 ResponseEntity<MyResponse> response = template.exchange(request, MyResponse.class);
 

@Controller での使用例:

 @RequestMapping("/handle")
 public void handle(RequestEntity<String> request) {
   HttpMethod method = request.getMethod();
   URI url = request.getUrl();
   String body = request.getBody();
 }
 
導入:
4.1
作成者:
Arjen Poutsma, Sebastien Deleuze, Parviz Rozikov
関連事項:
  • コンストラクターの詳細

    • RequestEntity

      public RequestEntity(HttpMethod method, URISE url)
      メソッドと URL はあるが、本文もヘッダーもないコンストラクター。
      パラメーター:
      method - メソッド
      url - URL
    • RequestEntity

      public RequestEntity(@Nullable T body, HttpMethod method, URISE url)
      メソッド、URL、ボディはあるがヘッダーはないコンストラクター。
      パラメーター:
      body - 体
      method - メソッド
      url - URL
    • RequestEntity

      public RequestEntity(@Nullable T body, HttpMethod method, URISE url, TypeSE type)
      メソッド、URL、ボディ、型はあるがヘッダーはないコンストラクター。
      パラメーター:
      body - 体
      method - メソッド
      url - URL
      type - ジェネリクス型解決に使用される型
      導入:
      4.3
    • RequestEntity

      public RequestEntity(MultiValueMap<StringSE,StringSE> headers, HttpMethod method, URISE url)
      メソッド、URL、ヘッダーはあるが本文はないコンストラクター。
      パラメーター:
      headers - ヘッダー
      method - メソッド
      url - URL
    • RequestEntity

      public RequestEntity(@Nullable T body, @Nullable MultiValueMap<StringSE,StringSE> headers, @Nullable HttpMethod method, URISE url)
      メソッド、URL、ヘッダー、本文を含むコンストラクター。
      パラメーター:
      body - 体
      headers - ヘッダー
      method - メソッド
      url - URL
    • RequestEntity

      public RequestEntity(@Nullable T body, @Nullable MultiValueMap<StringSE,StringSE> headers, @Nullable HttpMethod method, @Nullable URISE url, @Nullable TypeSE type)
      メソッド、URL、ヘッダー、ボディ、型を持つコンストラクター。
      パラメーター:
      body - 体
      headers - ヘッダー
      method - メソッド
      url - URL
      type - ジェネリクス型解決に使用される型
      導入:
      4.3
  • メソッドの詳細

    • getMethod

      @Nullable public HttpMethod getMethod()
      リクエストの HTTP メソッドを返します。
      戻り値:
      HttpMethod 列挙値としての HTTP メソッド
    • getUrl

      public URISE getUrl()
      ターゲット HTTP エンドポイントの URISE を返します。

      注意 RequestEntity が URISE インスタンスではなく URI テンプレートと変数で作成された場合、このメソッドは UnsupportedOperationExceptionSE を発生させます。これは、テンプレートを展開して URI をエンコードする方法をさらに入力しないと URI を作成できないためです。このような場合、URI は、それが構成されている UriTemplateHandler の助けを借りて、RestTemplate によって準備されます。

    • getType

      @Nullable public TypeSE getType()
      リクエストのボディの型を返します。
      戻り値:
      リクエストのボディ型、または不明の場合は null 
      導入:
      4.3
    • equals

      public boolean equals(@Nullable ObjectSE other)
      オーバーライド:
      クラス HttpEntity<T>equals 
    • hashCode

      public int hashCode()
      オーバーライド:
      クラス HttpEntity<T>hashCode 
    • toString

      public StringSE toString()
      オーバーライド:
      クラス HttpEntity<T>toString 
    • method

      public static RequestEntity.BodyBuilder method(HttpMethod method, URISE url)
      指定されたメソッドと URL でビルダーを作成します。
      パラメーター:
      method - HTTP メソッド (GET、POST など)
      url - URL
      戻り値:
      作成されたビルダー
    • method

      public static RequestEntity.BodyBuilder method(HttpMethod method, StringSE uriTemplate, ObjectSE... uriVariables)
      指定された HTTP メソッド、URI テンプレート、変数を使用してビルダーを作成します。
      パラメーター:
      method - HTTP メソッド (GET、POST など)
      uriTemplate - 使用する uri テンプレート
      uriVariables - URI テンプレートを展開する変数
      戻り値:
      作成されたビルダー
      導入:
      5.3
    • method

      public static RequestEntity.BodyBuilder method(HttpMethod method, StringSE uriTemplate, MapSE<StringSE,?> uriVariables)
      指定された HTTP メソッド、URI テンプレート、変数を使用してビルダーを作成します。
      パラメーター:
      method - HTTP メソッド (GET、POST など)
      uriTemplate - 使用する uri テンプレート
      戻り値:
      作成されたビルダー
      導入:
      5.3
    • get

      public static RequestEntity.HeadersBuilder<?> get(URISE url)
      指定された URL で HTTP GET ビルダーを作成します。
      パラメーター:
      url - URL
      戻り値:
      作成されたビルダー
    • get

      public static RequestEntity.HeadersBuilder<?> get(StringSE uriTemplate, ObjectSE... uriVariables)
      指定された文字列ベースの URI テンプレートを使用して HTTP GET ビルダーを作成します。
      パラメーター:
      uriTemplate - 使用する uri テンプレート
      uriVariables - URI テンプレートを展開する変数
      戻り値:
      作成されたビルダー
      導入:
      5.3
    • head

      public static RequestEntity.HeadersBuilder<?> head(URISE url)
      指定された URL で HTTP HEAD ビルダーを作成します。
      パラメーター:
      url - URL
      戻り値:
      作成されたビルダー
    • head

      public static RequestEntity.HeadersBuilder<?> head(StringSE uriTemplate, ObjectSE... uriVariables)
      指定された文字列ベースの URI テンプレートを使用して HTTP HEAD ビルダーを作成します。
      パラメーター:
      uriTemplate - 使用する uri テンプレート
      uriVariables - URI テンプレートを展開する変数
      戻り値:
      作成されたビルダー
      導入:
      5.3
    • post

      public static RequestEntity.BodyBuilder post(URISE url)
      指定された URL で HTTP POST ビルダーを作成します。
      パラメーター:
      url - URL
      戻り値:
      作成されたビルダー
    • post

      public static RequestEntity.BodyBuilder post(StringSE uriTemplate, ObjectSE... uriVariables)
      指定された文字列ベースの uri テンプレートを使用して HTTP POST ビルダーを作成します。
      パラメーター:
      uriTemplate - 使用する uri テンプレート
      uriVariables - URI テンプレートを展開する変数
      戻り値:
      作成されたビルダー
      導入:
      5.3
    • put

      public static RequestEntity.BodyBuilder put(URISE url)
      指定された URL で HTTP PUT ビルダーを作成します。
      パラメーター:
      url - URL
      戻り値:
      作成されたビルダー
    • put

      public static RequestEntity.BodyBuilder put(StringSE uriTemplate, ObjectSE... uriVariables)
      指定された文字列ベースの URI テンプレートを使用して HTTP PUT ビルダーを作成します。
      パラメーター:
      uriTemplate - 使用する uri テンプレート
      uriVariables - URI テンプレートを展開する変数
      戻り値:
      作成されたビルダー
      導入:
      5.3
    • patch

      public static RequestEntity.BodyBuilder patch(URISE url)
      指定された URL で HTTP PATCH ビルダーを作成します。
      パラメーター:
      url - URL
      戻り値:
      作成されたビルダー
    • patch

      public static RequestEntity.BodyBuilder patch(StringSE uriTemplate, ObjectSE... uriVariables)
      指定された文字列ベースの uri テンプレートを使用して HTTP PATCH ビルダーを作成します。
      パラメーター:
      uriTemplate - 使用する uri テンプレート
      uriVariables - URI テンプレートを展開する変数
      戻り値:
      作成されたビルダー
      導入:
      5.3
    • delete

      public static RequestEntity.HeadersBuilder<?> delete(URISE url)
      指定された URL で HTTP DELETE ビルダーを作成します。
      パラメーター:
      url - URL
      戻り値:
      作成されたビルダー
    • delete

      public static RequestEntity.HeadersBuilder<?> delete(StringSE uriTemplate, ObjectSE... uriVariables)
      指定された文字列ベースの URI テンプレートを使用して HTTP DELETE ビルダーを作成します。
      パラメーター:
      uriTemplate - 使用する uri テンプレート
      uriVariables - URI テンプレートを展開する変数
      戻り値:
      作成されたビルダー
      導入:
      5.3
    • options

      public static RequestEntity.HeadersBuilder<?> options(URISE url)
      指定された URL で HTTP OPTIONS ビルダーを作成します。
      パラメーター:
      url - URL
      戻り値:
      作成されたビルダー
    • options

      public static RequestEntity.HeadersBuilder<?> options(StringSE uriTemplate, ObjectSE... uriVariables)
      指定された文字列ベースの URI テンプレートを使用して HTTP OPTIONS ビルダーを作成します。
      パラメーター:
      uriTemplate - 使用する uri テンプレート
      uriVariables - URI テンプレートを展開する変数
      戻り値:
      作成されたビルダー
      導入:
      5.3