HttpClient のリクエスト メッセージとレスポンス メッセージのログ記録
HttpClient クラスを利用する場合、リクエスト メッセージとレスポンス メッセージの両方をログに記録することは、デバッグと監視にとって重要です。目的。これにより、送受信される実際の JSON コンテンツをキャプチャして検査できるようになり、コードとリモート サービス間の通信に関する貴重な洞察が得られます。
ロギングの効果的なアプローチの 1 つは、次のようなカスタム ハンドラーを採用することです。 LoggingHandler。HTTP 要求および応答メッセージを、HttpClient の組み込みハンドラーが処理する前後にインターセプトします。これにより、メッセージの内容をネットワーク経由で送信する前、またはサーバーから受信した後にログに記録できます。
LoggingHandler を作成するには、DelegatingHandler クラスを拡張し、SendAsync メソッドをオーバーライドします。このメソッド内で Console.WriteLine メソッドを使用して、メソッド、URI、バージョン、コンテンツ、ヘッダーなどのリクエストの詳細をログに記録します。さらに、ステータス コード、理由フレーズ、バージョン、コンテンツ、ヘッダーなどの応答の詳細をログに記録できます。
LoggingHandler を作成したら、HttpClient(HttpMessageHandler) を使用してそれを HttpClient インスタンスにチェーンします。コンストラクタ。これにより、クライアント経由で送信されるすべてのリクエストがログ記録のために LoggingHandler を通過することが保証されます。
これらの手順に従うことで、HttpClient の使用時にリクエストと応答のメッセージを効果的にログに記録し、通信プロセスに関する貴重な洞察を得ることができ、通信プロセスを簡素化できます。デバッグ作業。
以上が効果的なデバッグのために HttpClient の要求メッセージと応答メッセージをログに記録するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。