ホームページ >バックエンド開発 >C#.Net チュートリアル >Asp.Net WebAPI C# の組み込みメッセージ ハンドラーとは何ですか?

Asp.Net WebAPI C# の組み込みメッセージ ハンドラーとは何ですか?

王林
王林転載
2023-09-11 15:45:061007ブラウズ

メッセージ ハンドラーは、HTTP リクエストを受信して​​ HTTP を返すクラスです。 返事。メッセージ ハンドラーは、抽象 HttpMessageHandler クラスから派生します。 メッセージ ハンドラーは、受信メッセージを処理、編集、または拒否する機会を提供します。 リクエストが HttpControllerDispatcher に到達する前。

メッセージ ハンドラーはリクエスト処理パイプラインの早い段階で実行されるため、 これらは、Web API で横断的な関心事を実装するのに最適な場所です。情報 ハンドラーは一連のクラスにすぎません (システム定義または次のクラスによって表現される場合があります)。 us) は、HTTP リクエストとレスポンスをパイプするプロセスと並行して動作します。

Asp.Net webAPI C# 中的内置消息处理程序是什么?

たとえば、HTTP リクエストが HTTP サーバーに到着すると、リクエストは次のようになります。 HandlerA に渡され、HandlerA で処理された後、HandlerB に渡される場合があります。 すぐ。ここでの利点は、これをそれぞれの環境で実行できることです。 処理手順はビジネス ニーズによって異なります。

ASP.NET Web API Framework には、次の 2 種類のメッセージ ハンドラーがあります。 使える。それらは次のとおりです。

  • サーバーサイド HTTP メッセージ ハンドラー
  • クライアントサイド HTTP メッセージ ハンドラー

サーバーサイド メッセージ ハンドラー

サーバー上側では、Web API パイプラインはいくつかの組み込みメッセージ ハンドラー (

  • HttpServer strong>) を使用してホストからリクエストを取得します。
  • HttpRoutingDispatcher ルーティングに基づいてリクエストをディスパッチします。
  • HttpControllerDispatcher Web API コントローラーにリクエストを送信します。

カスタム ハンドラーをパイプラインに追加できます。メッセージ ハンドラーは横断的な用途に最適です (コントローラ レベルではなく) HTTP メッセージ レベルで動作する問題 アクション)。たとえば、メッセージ ハンドラーは、

  • #リクエスト ヘッダーの読み取りまたは変更を行う可能性があります。
  • 応答ヘッダーを応答に追加します。
  • リクエストがコントローラに到達する前に検証します。

クライアント側の HTTP メッセージ ハンドラー

クライアント側では、HttpClient クラスがメッセージ ハンドラーを使用してリクエストを処理します。デフォルトのハンドラーは HttpClientHandler で、ネットワーク経由でリクエストを送信します。 そしてサーバーからの応答を取得します。カスタム メッセージ ハンドラーをクライアント パイプラインに挿入できます。

以上がAsp.Net WebAPI C# の組み込みメッセージ ハンドラーとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。