問題タブ [guzzle6]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - guzzle 6 で xml を送信 (POST) する適切な方法
xmlファイルを送信するguzzleで投稿を実行したい。例が見つかりませんでした。
私がこれまでに行ったことは次のとおりです。
何を試してもエラー -1 が返されます。これは、xml が無効であることを意味します。私が送信した XML はオンライン検証に合格し、有効な %100 です
助けてください。
promise - がぶがぶ反応 Promise 原因無限ループ
Guzzle 6を使用 して非同期リクエストを呼び出し、次にReact Promise/Deferredおよび Event loop を使用し、php-react-blockを使用して解決済みの結果を取得します。
まず、次のように http Request を送信します。
このメソッドを次のように呼び出した後
しかし、 Clue\React\Block\await($requestPromise, $loop) を呼び出すと、システムが無限にループし、約束を解決できません。また、関連イベント(LibEvent)のrunメソッドにqueue->run()メソッドを追加しました。しかし、システムはまだ無限にループしています。
システムが無限にループするのはなぜですか?
助けてくれてありがとう
php - Guzzle 6 ダウンロードの進行状況
Guzzleで大きなファイルをダウンロードしたいのですが、進行状況を追跡したいです。ストリームを渡す必要があるのか、何らかの方法で RequestMediator を使用する必要があるのか わかりません。
- イベント curl.callback.progress をサブスクライブしてみましたが、PSR 7 Request にはイベント ディスパッチャがありません。
- on_statsを試しましたが、コールバックは最後にのみ発生します。
- プログレス サブスクライバー プラグインは廃止されましたhttps://github.com/guzzle/progress-subscriber
次のコードをテストしています。
ヒントをいただければ幸いです。
php - 非同期ガズルリクエストからファイル拡張子を取得する
guzzle を使用して URL から画像を取得しています。これらの URL の一部は s3 からのものです。s3 は、application/octet-stream
画像のコンテンツ タイプを使用します。$request
コールバックでオブジェクトにアクセスできないと思うfulfilled
ので、拡張子が URL にあるかどうかわかりません。fulfilled
コンテンツ タイプが の場合、コールバックで拡張子を推測する方法はありapplication/octet-stream
ますか?
php - guzzel で拒否された応答をどのように処理しますか?
次のコードを検討してください。
プールされるリクエストの配列を作成します。通常、ここには 10,000 件のリクエストが送信されます。
問題の 1 つは拒否されたセクションです。
ここで、拒否されたメッセージをログアウトすると、次のように返されます。
キューに入れられ、それぞれが 10,000 のリクエストを送信する 13 をはるかに超えるジョブがおそらくあるため、これらは大量にあります。
この API のレート制限は、1 秒あたり 150 リクエストです。ですから、150 を達成していないか、少なくともそうすべきではないことはわかっています。
質問は、拒否されたリクエストを再試行するにはどうすればよいですか? 失敗した場合、最大 x 回再試行する方法はありますか? ガズルにはそれが組み込まれていますか?
php - laravelでguzzle 6レスポンスボディを扱う
ローカル API と通信する Laravel 5.2 プロジェクトを作成しています。そして、Guzzle レスポンスボディの処理に問題があります。
私のコントローラー:
私のブレード ビュー:
ループまたはコントローラーにエラーはありません。また、ブラウザーにストリーム オブジェクトが表示されていますが、ループには何も表示されません。
私はすでに Guzzle 6 レスポンスボディのドキュメントを読みましたが、私のような初心者にとってはそれほど明確ではありません。
考え?
ブラウザ出力:
php - Cookie とデータを含むガズル投稿
現在のカール形式
Guzzle を使用して Cookie を検証し、データを投稿するにはどうすればよいですか?
php - Laravelで503エラーが発生したときにGuzzle 6にリクエストを再試行させるにはどうすればよいですか
信頼できない API ソースから結果を取得するために、Laravel 5.2 でいくつかのコードを作成しました。ただし、API 呼び出しは約 3 分の 1 の確率で 503 になるため、試行が失敗した場合にリクエストを自動的に再試行できる必要があります。
私はこれを行うために Guzzle を使用しており、503 応答を処理する前にインターセプトするコードを配置する場所を知っていると思います。しかし、実際にそこに何を書くべきかわかりません。
guzzle のドキュメントは再試行に関する限り多くを提供しておらず、私が遭遇した Guzzle 6 のすべての例は、結果を取得する方法のみを示しています (これは既に実行できます)。必要に応じてリクエストします。
私は決して誰かに私のために仕事をするように頼んでいるわけではありません - しかし、私はこれについての私の理解の限界に近づいていると思います. 誰かが私を正しい方向に向けることができれば、それは大歓迎です:)
編集:
がんばって見直します。次のコードを検討してください。その中で、通常は JSON 応答を生成する GET 要求を送信したいと考えています。
DataController.php
このリクエストからの応答が 503 の場合、ここでインターセプトできます。
Handler.php
それを置くのに最適な場所かどうかはわかりませんが、本当の問題は、if ($e->getCode() == 503)
post - クエリ文字列パラメーターを使用して Guzzle 投稿を作成する方法
Google Oauth2 実装では、ガズル呼び出しを使用してトークンの認証コードを交換しようとしています。
次の guzzle 呼び出しは正常に機能し、期待値を返します。
ただし、これは投稿リクエストをマウントする汚い方法のようです。
きれいにするために、次の方法を試しました。
ただし、この 2 番目の呼び出しではMalformed Json
エラー メッセージが生成されます。
何が間違っているのか、または上記の例で生成されている最終的な URL をどのようにデバッグできますか?