ホームページ  >  記事  >  バックエンド開発  >  Guzzle Debugger を使用して PHP 関数の HTTP リクエストをデバッグするにはどうすればよいですか?

Guzzle Debugger を使用して PHP 関数の HTTP リクエストをデバッグするにはどうすればよいですか?

王林
王林オリジナル
2024-04-23 14:06:011106ブラウズ

如何用 Guzzle Debugger 调试 PHP 函数的 HTTP 请求?

Guzzle Debugger を使用して PHP 関数の HTTP リクエストをデバッグするにはどうすればよいですか?

Guzzle Debugger は、PHP 関数内で行われた HTTP リクエストについての洞察を提供する強力なツールです。詳細なログと診断情報を提供することで、リクエストとレスポンスに関連する問題を特定して解決するのに役立ちます。

Guzzle Debugger をインストールする

composer require guzzle/debug

Guzzle Debugger を有効にする

Guzzle Debugger を有効にするには、## を使用する必要があります。 #setDebug( ) DebugPluginGuzzleHttp\Client に追加するメソッド: <pre class='brush:php;toolbar:false;'>use GuzzleHttp\Client; use GuzzleHttp\HandlerStack; use GuzzleHttp\Middleware\DebugMiddleware; $handler = HandlerStack::create(); $handler-&gt;push(DebugMiddleware::log()); $client = new Client(['handler' =&gt; $handler]);</pre>

実際のケース

以下は、Guzzle Debugger を使用して HTTP リクエストをデバッグする例です:

use GuzzleHttp\Client;

$client = new Client();
try {
    $response = $client->request('GET', 'https://example.com/api/v1/users');
    echo $response->getBody();
} catch (\Exception $e) {
    echo $e->getMessage();
}
// 输出调试日志
echo DebugMiddleware::log();

デバッグ ログ出力には、次の情報が含まれます:

リクエスト URI
  • リクエスト メソッド
  • HTTP バージョン
  • リクエスト ヘッダー
  • リクエスト本文
  • レスポンス ステータス コード
  • レスポンス ヘッダー
  • レスポンス本文
トラブルシューティングにデバッグ ログを使用する

デバッグ ログは、次のような問題を特定するのに役立ちます:

間違ったリクエスト メソッドまたは URI
  • リクエスト ヘッダーが欠落しているか無効です
  • 無効な JSON リクエスト本文
  • サーバー側のエラー応答
  • デバッグ ログを表示することで、ソースをすぐに特定できます。問題を解決するための適切な措置を講じます。

カスタム ログ レベル

Guzzle Debugger にはさまざまなログ レベルが用意されており、ログに含まれる情報の量を制御できます。デフォルトでは、すべてのリクエストとレスポンスの情報をログに記録する

LOG_INFO

を使用します。 GuzzleHttp\Middleware\DebugMiddleware::setLevel() メソッドを使用してログ レベルをカスタマイズできます: <pre class='brush:php;toolbar:false;'>DebugMiddleware::setLevel(DebugMiddleware::LOG_DEBUG);</pre>これにより、エラー トレースバックや内部 PSR-7 リクエストなどのより詳細なデバッグ情報が記録されます。および応答オブジェクト。

以上がGuzzle Debugger を使用して PHP 関数の HTTP リクエストをデバッグするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。