public static interface WebTestClient.Builder
WebClient
をカスタマイズする手順。内部で WebClient.Builder
に委譲します。WebTestClient.Builder baseUrl(StringSE baseUrl)
WebClient.create(String)
の説明に従ってベース URI を構成します。WebTestClient.Builder uriBuilderFactory(UriBuilderFactory uriBuilderFactory)
baseUrl(String)
の代替として、また事実上オーバーライドするために、事前に構成された UriBuilderFactory
インスタンスを提供します。WebTestClient.Builder defaultHeader(StringSE headerName, StringSE... headerValues)
headerName
- ヘッダー名 headerValues
- ヘッダー値 WebTestClient.Builder defaultHeaders(ConsumerSE<HttpHeaders> headersConsumer)
HttpHeaders
メソッドを使用したりできます。headersConsumer
- HttpHeaders
を消費する関数 WebTestClient.Builder defaultCookie(StringSE cookieName, StringSE... cookieValues)
cookieName
- クッキー名 cookieValues
- クッキーの値 WebTestClient.Builder defaultCookies(ConsumerSE<MultiValueMap<StringSE,StringSE>> cookiesConsumer)
MultiValueMap
メソッドを使用したりできます。cookiesConsumer
- Cookie マップを使用する関数 WebTestClient.Builder filter(ExchangeFilterFunction filter)
filter
- チェーンに追加されるフィルター WebTestClient.Builder filters(ConsumerSE<ListSE<ExchangeFilterFunction>> filtersConsumer)
filtersConsumer
- フィルターリストを使用する関数 WebTestClient.Builder entityExchangeResultConsumer(ConsumerSE<EntityExchangeResult<?>> consumer)
EntityExchangeResult
コールバックを構成します。事実上、以下のすべてと同等ですが、グローバルに 1 回登録されます。client.get().uri("/accounts/1") .exchange() .expectBody(Person.class).consumeWith(exchangeResult -> ... )); client.get().uri("/accounts") .exchange() .expectBodyList(Person.class).consumeWith(exchangeResult -> ... )); client.get().uri("/accounts/1") .exchange() .expectBody().consumeWith(exchangeResult -> ... ));
構成されたコンシューマーは、Flux<T>
にデコードされたレスポンスには適用されないことに注意してください。レスポンスは、reactor.test.StepVerifier
などを介してテストクライアントのワークフローの外部で使用できます。
consumer
- エンティティのレスポンスに適用するコンシューマー WebTestClient.Builder codecs(ConsumerSE<ClientCodecConfigurer> configurer)
configurer
- 適用するコンフィギュレーター WebTestClient.Builder exchangeStrategies(ExchangeStrategies strategies)
ExchangeStrategies
を構成します。 ほとんどの場合、ExchangeStrategies
のコーデックを置き換えるのではなくカスタマイズできる codecs(Consumer)
を使用することをお勧めします。これにより、複数の関係者がコーデック設定に貢献できるようになります。
デフォルトでは、これは ExchangeStrategies.withDefaults()
に設定されています。
strategies
- 使用する戦略 @DeprecatedSE WebTestClient.Builder exchangeStrategies(ConsumerSE<ExchangeStrategies.Builder> configurer)
codecs(Consumer)
に変更 exchangeStrategies(ExchangeStrategies)
で構成された戦略をカスタマイズします。このメソッドは、複数の関係者が ExchangeStrategies
を更新するシナリオで使用するために設計されています。WebTestClient.Builder responseTimeout(DurationSE timeout)
デフォルトでは 5 秒。
timeout
- レスポンスタイムアウト値 WebTestClient.Builder apply(WebTestClientConfigurer configurer)
これは、事前にパッケージ化されたカスタマイズを適用できます。
configurer
- 適用するコンフィギュレーター WebTestClient build()
WebTestClient
インスタンスをビルドします。