インターフェース RestClient.RequestHeadersSpec<S extends RestClient.RequestHeadersSpec<S>>

型パラメーター:
S - 仕様型への自己参照
すべての既知のサブインターフェース:
RestClient.RequestBodySpecRestClient.RequestBodyUriSpecRestClient.RequestHeadersUriSpec<S>
含まれているインターフェース:
RestClient

public static interface RestClient.RequestHeadersSpec<S extends RestClient.RequestHeadersSpec<S>>
交換に至るまでのリクエストヘッダーを指定するための契約。
  • メソッドの詳細

    • accept

      S accept(MediaType... acceptableMediaTypes)
      Accept ヘッダーで指定されているように、受け入れ可能なメディア型のリストを設定します。
      パラメーター:
      acceptableMediaTypes - 許容されるメディア型
      戻り値:
      このビルダー
    • acceptCharset

      S acceptCharset(CharsetSE... acceptableCharsets)
      Accept-Charset ヘッダーで指定されているように、受け入れ可能な文字SEセットのリストを設定します。
      パラメーター:
      acceptableCharsets - 許容される文字セット
      戻り値:
      このビルダー
    • cookie

      S cookie(StringSE name, StringSE value)
      指定された名前と値で Cookie を追加します。
      パラメーター:
      name - クッキー名
      value - クッキー値
      戻り値:
      このビルダー
      導入:
      6.2
    • cookies

      S cookies(ConsumerSE<MultiValueMap<StringSE,StringSE>> cookiesConsumer)
      これまでに宣言されたすべての Cookie へのアクセスを提供し、値を追加、置換、削除する機能があります。
      パラメーター:
      cookiesConsumer - アクセスを提供するコンシューマー
      戻り値:
      このビルダー
      導入:
      6.2
    • ifModifiedSince

      S ifModifiedSince(ZonedDateTimeSE ifModifiedSince)
      If-Modified-Since ヘッダーの値を設定します。
      パラメーター:
      ifModifiedSince - ヘッダーの新しい値
      戻り値:
      このビルダー
    • ifNoneMatch

      S ifNoneMatch(StringSE... ifNoneMatches)
      If-None-Match ヘッダーの値を設定します。
      パラメーター:
      ifNoneMatches - ヘッダーの新しい値
      戻り値:
      このビルダー
    • header

      S header(StringSE headerName, StringSE... headerValues)
      指定された名前に、指定された単一のヘッダー値を追加します。
      パラメーター:
      headerName - ヘッダー名
      headerValues - ヘッダー値
      戻り値:
      このビルダー
    • headers

      S headers(ConsumerSE<HttpHeaders> headersConsumer)
      これまでに宣言されたすべてのヘッダーへのアクセスを提供し、値を追加、置換、削除できます。
      パラメーター:
      headersConsumer - アクセスを提供するコンシューマー
      戻り値:
      このビルダー
    • attribute

      S attribute(StringSE name, ObjectSE value)
      指定された名前の属性に指定された値を設定します。
      パラメーター:
      name - 追加する属性の名前
      value - 追加する属性の値
      戻り値:
      このビルダー
      導入:
      6.2
    • attributes

      S attributes(ConsumerSE<MapSE<StringSE,ObjectSE>> attributesConsumer)
      これまでに宣言されたすべての属性へのアクセスを提供し、値を追加、置換、削除する機能があります。
      パラメーター:
      attributesConsumer - アクセスを提供するコンシューマー
      戻り値:
      このビルダー
      導入:
      6.2
    • httpRequest

      S httpRequest(ConsumerSE<ClientHttpRequest> requestConsumer)
      ClientHttpRequest へのアクセスのコールバック。これにより、基盤となる HTTP ライブラリのネイティブリクエストへのアクセスが提供されます。

      これは、基礎となるライブラリによって公開される高度なリクエストごとのオプションを設定する場合に便利です。

      パラメーター:
      requestConsumer - ClientHttpRequest にアクセスするコンシューマー
      戻り値:
      このビルダー
    • retrieve

      取得ワークフローを入力し、返された RestClient.ResponseSpec を使用して、いくつかの組み込みオプションから選択し、レスポンスを抽出します。例:
       ResponseEntity<Person> entity = client.get()
           .uri("/persons/1")
           .accept(MediaType.APPLICATION_JSON)
           .retrieve()
           .toEntity(Person.class);
       

      または体だけに興味がある場合:

       Person person = client.get()
           .uri("/persons/1")
           .accept(MediaType.APPLICATION_JSON)
           .retrieve()
           .body(Person.class);
       
      このメソッドは、返された RestClient.ResponseSpec のいずれかを呼び出すまで、実際にはリクエストを実行しないことに注意してください。リクエストの実行とレスポンスの抽出を分離する必要がある場合は、exchange(ExchangeFunction) バリアントを使用します。

      デフォルトでは、4xx レスポンスコードは HttpClientErrorException になり、5xx レスポンスコードは HttpServerErrorException になります。エラー処理をカスタマイズするには、onStatus ハンドラーを使用します。

      戻り値:
      ResponseSpec は、本文のデコード方法を指定します
    • exchange

      @Nullable default <T> T exchange(RestClient.RequestHeadersSpec.ExchangeFunction<T> exchangeFunction)
      ClientHttpResponse を型 T に交換します。これは、レスポンスステータスに応じて異なる方法でレスポンスをデコードするなど、高度なシナリオで役立ちます。
       Person person = client.get()
           .uri("/people/1")
           .accept(MediaType.APPLICATION_JSON)
           .exchange((request, response) -> {
               if (response.getStatusCode().equals(HttpStatus.OK)) {
                   return deserialize(response.getBody());
               }
               else {
                   throw new BusinessException();
               }
           });
       

      : 交換関数が呼び出された後、レスポンスは閉じられます

      型パラメーター:
      T - レスポンスが変換される型
      パラメーター:
      exchangeFunction - レスポンスを処理する関数
      戻り値:
      交換関数から返された値
    • exchange

      @Nullable <T> T exchange(RestClient.RequestHeadersSpec.ExchangeFunction<T> exchangeFunction, boolean close)
      ClientHttpResponse を型 T に交換します。これは、レスポンスステータスに応じて異なる方法でレスポンスをデコードするなど、高度なシナリオで役立ちます。
       Person person = client.get()
           .uri("/people/1")
           .accept(MediaType.APPLICATION_JSON)
           .exchange((request, response) -> {
               if (response.getStatusCode().equals(HttpStatus.OK)) {
                   return deserialize(response.getBody());
               }
               else {
                   throw new BusinessException();
               }
           });
       

      close が true の場合、レスポンスは交換関数が呼び出された後に閉じられます。false に設定すると、呼び出し元はレスポンスを閉じる責任があります。

      型パラメーター:
      T - レスポンスが変換される型
      パラメーター:
      exchangeFunction - レスポンスを処理する関数
      close - exchangeFunction が呼び出された後にレスポンスを閉じるには true、レスポンスを開いたままにするには false 
      戻り値:
      交換関数から返された値