Guzzle は、HTTP リクエストの送信や Web サービス ライブラリの作成を容易にする人気の PHP HTTP クライアントです。最も人気のある PHP フレームワークは内部 Http クライアント サービスを提供しており、それらは単に Guzzle Http クライアントのカスタマイズされた実装です:
Guzzle は 2 つの主な理由で広く使用されています:
デザインパターンのファンのために、Guzzle は拡張機能を受け入れています。 Guzzle のコア コンポーネント (HTTP クライアント、リクエスト、レスポンス、Milddeware など) を拡張することで、新しい機能を Guzzle に簡単に実装できることを意味します。
Guzzle ミドルウェア システムを使用すると、開発者は送信前にリクエストを操作したり、処理前にレスポンスを操作したりできます。ログ記録、認証、エラー処理などの高度な機能を有効にすることができます。
このチュートリアルでは、アプリケーションから外部サービスに対して行われるすべてのリクエストを簡単に監視できるように、カスタム Guzzle Http クライアントを作成するプロセスを説明します。
この実装を IoC コンテナ (またはサービス コンテナ) に挿入して、この実装をアプリケーション全体で利用できるようにする方法も説明します。
基本、カスタマイズ オプションについて説明し、実際のコード例を提供します。
Guzzle がインストールされていることを確認してください。そうでない場合は、Composer を使用してインストールします:
基本的なカスタム Guzzle Http クライアントを作成することから始めましょう:
この例では、Guzzle Http Client クラスを拡張し、コンストラクターをカスタマイズして、このクライアントによって行われたすべてのリクエストにカスタム ヘッダーを追加します。
Guzzle は、HTTP リクエストを実行するためのショートカット メソッドを提供します:
これらのメソッドはすべて、内部で汎用リクエスト メソッドを使用します。以下のスクリーンショットは、Guzzle クライアントのコードから取得したものです:
リクエスト メソッドをオーバーライドして、アプリケーションによって外部サービスに対して行われる HTTP 呼び出しの管理をカスタマイズできます。
この例では、リクエストごとにトランザクションのタイムラインに新しいアイテムを追加するだけです。これで、Guzzle によって行われた API 呼び出しをモニタリング ビューで確認できるようになります:
Inspector を初めて使用する場合は、このチュートリアルに従って開始することができます:
https://inspector.dev/laravel-real-time-performance-monitoring-using-inspector-part-1/
コールバックに Segment パラメータを挿入して、項目を操作したり、より多くの情報を追加したりすることもできます:
これで、アプリケーションでカスタム クライアントを使用できるようになりました。この拡張機能は標準の Guzzle Http クライアントの動作に変更を加えないため、カスタム クラスのインスタンスを作成して通常どおり使用できます:
この例では Laravel を使用しますが、基本的な概念は記事の冒頭で説明した最も一般的な PHP フレームワークと同じです。それらはすべてサービス コンテナで動作します。
Guzzle Http Client クラスのコンテナにシングルトン バインディングを作成します。したがって、このクラスを要求するすべてのサービスは、リアルタイム監視をサポートするカスタム クライアントのインスタンスを受け取ります。
これで、Guzzle Http Client クラスを Artisan Command に挿入し、テストのためだけに Http 呼び出しを実行してみることができます。
コマンドを実行して、HTTP 呼び出しがトランザクションのタイムラインに表示されるかどうかを確認します。
Inspector は、ソフトウェア開発者向けに特別に設計されたコード実行監視ツールです。クラウド インフラストラクチャやサーバーに何もインストールする必要はありません。composer パッケージをインストールするだけで準備完了です。
他の複雑なオールインワン プラットフォームとは異なり、Inspector は非常に簡単で、PHP に優しいです。 Laravel または Symfony パッケージをお試しください。
効果的な自動化、深い洞察、アラートや通知をメッセージング環境に転送する機能をお探しの場合は、Inspector を無料でお試しください。アカウントを登録してください。
または、Web サイトで詳細をご覧ください: https://inspector.dev
以上がGuzzle Http クライアントを監視する方法 – PHP の簡単なヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。