次の既知のモジュールがクラスパスで検出された場合、自動的に登録します。Joda-Timeタイプのサポート。APIタイプのサポート。Kotlinクラスとデータクラスのサポート。MVC次の例は、ビューの解像度を構成する方法を示しています。Frameworkが統合するビューテクノロジーへのショートカットがあります。実装をプラグインすることもできます。実装に基づいて、1つまたは複数の既定のビューを構成できます。次の例は、その方法を示しています。WebFluxと統合されているビューテクノロジーの詳細については、ビューテクノロジーを参照してください。ベースの場所のリストから静的リソースを提供する便利な方法を提供します。関連する静的リソースを見つけて処理します。ブラウザーのキャッシュを最大限に使用し、ブラウザーが行うHTTPリクエストを削減するために、リソースには1年間の有効期限があります。ステータスコードが返されます。次のリストに例を示します。実装のチェーンもサポートしています。これらを使用して、最適化されたリソースを操作するためのツールチェーンを作成できます。(MD5ハッシュ)は、いくつかの注目すべき例外(モジュールローダーで使用されるJavaScriptリソースなど)がある場合に適しています。使用する方法を示しています。使用してURLを書き換え、リゾルバーとトランスフォーマーの完全なチェーンを適用できます(たとえば、バージョンを挿入するため)。提供するため、他に注入することができます。MVCとは異なり、現在、WebFluxでは、リゾルバーとトランスフォーマーのノンブロッキングチェーンを使用できるビューテクノロジーがないため、静的リソースURLを透過的に書き換える方法はありません。(たとえば、カスタム要素を介して)使用してブロックすることです。VersionedResourceResolverの両方を使用する場合、エンコードされていないファイルに基づいてコンテンツベースのバージョンが常に確実に計算されるように、この順序で登録する必要があります。/jquery/1.2.0/jquery.min.jsなど)と照合することもできます。MVCパスマッチングに関連するオプションをカスタマイズできます。javadocを参照してください。次の例は、PathMatchConfigurerの使用方法を示しています。呼ばれる要求パスの解析された表現に依存し、セミコロンコンテンツ(つまり、パスまたはマトリックス変数)を削除します。MVCとは異なり、要求パスをデコードするか、パスマッチングのためにセミコロンコンテンツを削除するかを指定する必要はありません。MVC、とは異なり、接尾辞パターンマッチングをサポートしていないお勧めします、それに離れ依存から移動します。実装を検出して委譲し、その構成をカスタマイズします。実装をいくつでも持つことができます。4と互換性があります。プログラミングモデルの観点からは、アプリケーションが行う必要のある特定のものはありません。サーバー構成に関連する考慮事項があります。2をサポートしていません。リソースをプログラムでクライアントにプッシュすることもサポートされていません。クライアントには、宣言的構成のためのリアクティブ型を持つ機能的で流なAPIがあります。リアクティブライブラリを参照してください。WebFluxクライアントとサーバーは、同じノンブロッキングコーデックに依存して、リクエストおよびレスポンスコンテンツをエンコードおよびデコードします。HTTPクライアントライブラリに委譲します。ClientHttpConnectorを介してプラグインできます。作成する最も簡単な方法は、静的ファクトリーメソッドの1つを使用することです。クラスパス上にあることを想定しています。追加オプションとともに使用することもできます。カスタマイズしました。すべてのリクエストのヘッダー。リクエストごとのCookie。すべてのリクエストをカスタマイズします。すべてのリクエストのクライアントフィルター。HTTPメッセージリーダー/ライターのカスタマイズ。HTTPクライアントライブラリの設定。次の例では、HTTPコーデックを構成しています。インスタンスは不変です。次の例に示すように、元のインスタンスに影響を与えることなく、クローンを作成して変更されたコピーを作成できます。WebFluxは、アプリケーションメモリの課題を回避するために、コーデックのメモリ内データのバッファリングの制限を構成します。デフォルトでは、これは256KBに設定されており、ユースケースに十分でない場合は、次のように表示されます。buffer次のコードサンプルを使用して、すべてのデフォルトコーデックでこの制限を構成できます。Nettyリソースに参加します。これは、イベントループの同時実行には固定の共有リソースが優先されるため、推奨されるモードです。このモードでは、プロセスが終了するまでグローバルリソースがアクティブのままになります。シャットダウンの必要はありません。Nettyがグローバルであることを確認できます。閉じられると、リソースはシャットダウンされます。Nettyリソースに参加しないことも選択できます。Nettyクライアントおよびサーバーインスタンスが共有リソースを使用することを保証する負担があります。グローバルなリソースから独立したリソースを作成します。コンストラクターを使用します。WebClient.Builderに差し込みます。グローバルなリソースから独立したリソースを作成します。コンストラクターを使用します。WebClient.Builderに差し込みます。設定をカスタマイズする方法を示しています。呼び出されるまでアクティブのままになります。閉じられたときにリソースを確実にシャットダウンできます。コンストラクターを使用します。WebClient.Builderに差し込みます。コンストラクターを使用します。WebClient.Builderに差し込みます。メソッドは、応答本文を取得してデコードする最も簡単な方法です。次の例は、その方法を示しています。.awaitBody<Person>()次の例に示すように、応答からデコードされたオブジェクトのストリームを取得することもできます。WebClientResponseException.NotFoundなどのHTTPステータス固有のサブクラスの1つになります。メソッドを使用して、結果の例外をカスタマイズすることもできます。コールバックはそれを消費する必要があります。ない場合は、コンテンツが自動的に排出され、リソースが解放されます。メソッドよりも多くの制御を提供します。同等ですが、ClientResponseへのアクセスも提供します。ResponseEntityを作成することもできます。exchange()では、4xxおよび5xx応答の自動エラー信号がないことに注意してください。ステータスコードを確認し、続行する方法を決定する必要があります。使用すると、ボディを消費するために使用可能なすべてのオプションがリストされます。使用することをお勧めします。ReactiveAdapterRegistryによって処理される任意の非同期タイプからエンコードできます。.awaitBody<Unit>()次の例に示すように、オブジェクトのストリームをエンコードすることもできます。ショートカットメソッドを使用できます。本文として提供できます。自動的に設定されることに注意してください。String>の使用方法を示しています。.awaitBody<Unit>()次の例に示すように、BodyInsertersを使用してインラインでフォームデータを提供することもできます。提供する必要があります。マルチパートリクエストを準備するための便利なAPIを提供します。?>を作成する方法を示しています。指定する必要はありません。Resourceの場合はファイル拡張子に基づいて自動的に決定されます。明示的に提供できます。メソッドを使用することです。multipart/form-dataに設定する必要はありません。ラッパーが保証されます。BodyInsertersを介して、インラインスタイルのマルチパートコンテンツを提供することもできます。介してクライアントフィルター(ExchangeFilterFunction)を登録できます。.build()これは、認証などの横断的な関心事に使用できます。次の例では、静的ファクトリー方式による基本認証にフィルターを使用しています。.build()フィルタはすべてのリクエストにグローバルに適用されます。WebClientを複製したり、新しいフィルターを挿入したり、すでに登録されているフィルターを削除したりすることもできます。次の例では、インデックス0に基本認証フィルターを挿入します。結果の最後でブロックすることにより、同期スタイルで使用できます。.toList()}ただし、複数の呼び出しを行う必要がある場合は、各応答を個別にブロックするのを避け、代わりに結合された結果を待つ方が効率的です。}上記は単なる一例です。多くのリモート呼び出しを作成するリアクティブパイプラインをまとめる他のパターンと演算子がたくさんあります。WebFluxコントローラーをブロックする必要はありません。コントローラーメソッドから結果のリアクティブ型を返すだけです。WebFluxにも適用されます。モックWebサーバーを使用できます。サンプルを参照してください。WebSocketsサーブレットスタックと同じリファレンスドキュメントのこの部分では、リアクティブスタックWebSocketメッセージングのサポートについて説明します。単一のTCP接続を介してクライアントとサーバー間に全二重双方向通信チャネルを確立する標準化された方法を提供します。これはHTTPとは異なるTCPプロトコルですが、ポート80および443を使用し、既存のファイアウォールルールの再利用を可能にするHTTP上で動作するように設計されています。ヘッダーを使用してアップグレードするか、この場合はWebSocketプロトコルに切り替えるHTTPリクエストで始まります。次の例は、このような相互作用を示しています。