Guzzle は、HTTP リクエストの送信や Web サービス ライブラリの作成を容易にする人気の PHP HTTP クライアントです。最も人気のある PHP フレームワークは内部 Http クライアント サービスを提供しており、それらは単に Guzzle Http クライアントのカスタマイズされた実装です:
- Laravel HTTP クライアント
- Symfony HTTP クライアント
- Laminas (旧名 Zend Framework) HTTP クライアント
Guzzle は 2 つの主な理由で広く使用されています:
1) カスタマイズと柔軟性
デザインパターンのファンのために、Guzzle は拡張機能を受け入れています。 Guzzle のコア コンポーネント (HTTP クライアント、リクエスト、レスポンス、Milddeware など) を拡張することで、新しい機能を Guzzle に簡単に実装できることを意味します。
2) ミドルウェアのサポート
Guzzle ミドルウェア システムを使用すると、開発者は送信前にリクエストを操作したり、処理前にレスポンスを操作したりできます。ログ記録、認証、エラー処理などの高度な機能を有効にすることができます。
Guzzle HTTP クライアントの概要
このチュートリアルでは、アプリケーションから外部サービスに対して行われるすべてのリクエストを簡単に監視できるように、カスタム Guzzle Http クライアントを作成するプロセスを説明します。
この実装を IoC コンテナ (またはサービス コンテナ) に挿入して、この実装をアプリケーション全体で利用できるようにする方法も説明します。
基本、カスタマイズ オプションについて説明し、実際のコード例を提供します。
ガズルをインストールする
Guzzle がインストールされていることを確認してください。そうでない場合は、Composer を使用してインストールします:
基本的なカスタマイズ
基本的なカスタム Guzzle Http クライアントを作成することから始めましょう:
この例では、Guzzle Http Client クラスを拡張し、コンストラクターをカスタマイズして、このクライアントによって行われたすべてのリクエストにカスタム ヘッダーを追加します。
Guzzle HTTP リクエストの監視
Guzzle は、HTTP リクエストを実行するためのショートカット メソッドを提供します:
これらのメソッドはすべて、内部で汎用リクエスト メソッドを使用します。以下のスクリーンショットは、Guzzle クライアントのコードから取得したものです:
リクエスト メソッドをオーバーライドして、アプリケーションによって外部サービスに対して行われる HTTP 呼び出しの管理をカスタマイズできます。
この例では、リクエストごとにトランザクションのタイムラインに新しいアイテムを追加するだけです。これで、Guzzle によって行われた API 呼び出しをモニタリング ビューで確認できるようになります:
Inspector を初めて使用する場合は、このチュートリアルに従って開始することができます:
https://inspector.dev/laravel-real-time-performance-monitoring-using-inspector-part-1/
コールバックに Segment パラメータを挿入して、項目を操作したり、より多くの情報を追加したりすることもできます:
カスタムHTTPクライアントを使用する
これで、アプリケーションでカスタム クライアントを使用できるようになりました。この拡張機能は標準の Guzzle Http クライアントの動作に変更を加えないため、カスタム クラスのインスタンスを作成して通常どおり使用できます:
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 サイトの他の関連記事を参照してください。

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

ストレージ:: Laravelフレームワークのダウンロード方法は、ファイルストレージの抽象化を管理しながら、ファイルのダウンロードを安全に処理するための簡潔なAPIを提供します。 サンプルコントローラーでストレージ::ダウンロード()を使用する例は次のとおりです。

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

PHPロギングは、Webアプリケーションの監視とデバッグ、および重要なイベント、エラー、ランタイムの動作をキャプチャするために不可欠です。システムのパフォーマンスに関する貴重な洞察を提供し、問題の特定に役立ち、より速いトラブルシューティングをサポートします

Laravelのサービスコンテナとサービスプロバイダーは、そのアーキテクチャの基本です。 この記事では、サービスコンテナ、詳細サービスプロバイダーの作成、登録、および実用的な使用法を例で説明します。 Oveから始めます


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SublimeText3 中国語版
中国語版、とても使いやすい

ホットトピック









