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

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

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

    • namespace

      default S namespace(StringSE namespace)
      このリクエストの名前空間を設定します。
      パラメーター:
      namespace - 名前空間の値。
      戻り値:
      このビルダー。
    • token

      default S token(VaultToken token)
      このリクエストの認証トークンを設定します。
      パラメーター:
      token - Vault トークン。
      戻り値:
      このビルダー。
    • header

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

      S headers(HttpHeaders httpHeaders)
      指定されたヘッダーを追加または置き換えます。
      パラメーター:
      httpHeaders - 適用するヘッダー。
      戻り値:
      このビルダー。
    • headers

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

      取得ワークフローを入力し、返された ReactiveVaultClient.ResponseSpec を使用して、いくつかの組み込みオプションから選択し、レスポンスを抽出します。例:

       Mono<ResponseEntity<Person>> entityMono = client.get()
           .uri("/persons/1")
           .accept(MediaType.APPLICATION_JSON)
           .retrieve()
           .toEntity(Person.class);
       

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

       Mono<Person> entityMono = client.get()
           .uri("/persons/1")
           .accept(MediaType.APPLICATION_JSON)
           .retrieve()
           .bodyToMono(Person.class);
       

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

      戻り値:
      ResponseSpec は、本文の復号方法を指定するためのものです。
    • exchangeToMono

      <V> Mono<V> exchangeToMono(FunctionSE<ClientResponse,? extends Mono<V>> responseHandler)
      ClientResponse へのアクセスを介してより多くの制御を提供する retrieve() の代替。これは、たとえば、レスポンスステータスに応じて異なる方法でレスポンスをデコードするなど、高度なシナリオで役立ちます。

       Mono<Person> entityMono = client.get()
           .path("/persons/1")
           .accept(MediaType.APPLICATION_JSON)
           .exchangeToMono(response -> {
               if (response.statusCode().equals(HttpStatus.OK)) {
                   return response.bodyToMono(Person.class);
               }
               else {
                   return response.createError();
               }
           });
       

      注意 : 返された Mono が完了した後、レスポンス本体が消費されていない場合は、レスポンス本体が自動的に解放されます。レスポンスコンテンツが必要な場合、提供された関数はそれをデコードする方法を宣言する必要があります。

      型パラメーター:
      V - the type of Object the response will be transformed to.
      パラメーター:
      responseHandler - the function to handle the response with.
      戻り値:
      Mono produced from the response.
    • exchangeToFlux

      <V> Flux<V> exchangeToFlux(FunctionSE<ClientResponse,? extends Flux<V>> responseHandler)
      ClientResponse へのアクセスを介してより多くの制御を提供する retrieve() の代替。これは、たとえば、レスポンスステータスに応じて異なる方法でレスポンスをデコードするなど、高度なシナリオで役立ちます。

       Flux<Person> entityMono = client.get()
           .path("/persons")
           .accept(MediaType.APPLICATION_JSON)
           .exchangeToFlux(response -> {
               if (response.statusCode().equals(HttpStatus.OK)) {
                   return response.bodyToFlux(Person.class);
               }
               else {
                   return response.createError().flux();
               }
           });
       

      注意 : 返された Flux が完了した後、レスポンス本体が消費されていない場合は、レスポンス本体が自動的に解放されます。レスポンスコンテンツが必要な場合、提供された関数はそれをデコードする方法を宣言する必要があります。

      型パラメーター:
      V - the type of Objects the response will be transformed to.
      パラメーター:
      responseHandler - the function to handle the response with.
      戻り値:
      Flux of Objects produced from the response.