問題タブ [guzzle]

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.

0 投票する
2 に答える
6913 参照

symfony - guzzle php http クライアント Cookie のセットアップ

Zend Http Client から Guzzle Http Client に移行しようとしています。Guzzle は機能が充実しており、ほとんどの場合使いやすいと思いますが、Cookie プラグインの使用に関しては十分に文書化されていないと思います。私の質問は、Guzzle で、サーバーに対して行う HTTP リクエストの Cookie をどのように設定するかです。

Zend Client を使用すると、次のような簡単なことを実行できます。

では、Guzzle でこれを行うにはどうすればよいでしょうか。http://guzzlephp.org/guide/plugins.html#cookie-session-pluginを見てきました。しかし、それは一筋縄ではいかず、理解できませんでした。誰かが助けてくれるかも??

0 投票する
3 に答える
9142 参照

php - Guzzleでプログラムでクエリ文字列を作成しますか?

私のPHPGuzzleクライアントコードには、次のようなものがあります。

しかし、代わりに私は次のようなものが欲しいです:

ガズルで可能ですか?ドキュメントとランダムなグーグルからはそうであるように見えますが、正確な方法を見つけることができません。

0 投票する
1 に答える
4059 参照

curl - Error setting certificate verify locations (Vagrant, Guzzle, curl)

I have a Vagrant box setup and running. I am trying to use Guzzle to connect to an API for a 3rd party service.

From what I can understand it is having some issue validating a certificate or something from the vagrant box which is a virtual machine and the API servers.

Any advice would be greatly appreciated, thanks.

This is the error I am getting back:

0 投票する
1 に答える
548 参照

php - 既存のクラスをパッケージ化するPHARを含む

現在Guzzleを使用しているプロジェクトがあります(ブートストラップファイルの明示的な「require_once」によって[.pharとして]ロードされます)。

Amazon S3へのアップロードを簡単に処理できるように、AmazonからAWSSDKforPHPを追加しようとしています。残念ながら、パッケージ(.pharファイルとしてもパッケージ化されている)をインクルードしようとすると、PHPは厄介なエラーをスローします。

APCが以前にいくつかのrequire/include頭痛を引き起こすのを見たので、私はすでにAPCを(完全に)オフにしました。

PHPには、依存関係のあるパッケージを1回しか含めることができないという厄介な制限があるのではないかと思います。...しかし、私は間違っている可能性があります。

0 投票する
4 に答える
1799 参照

php - Symfony2 ReST クライアント構造

Symfony 2 で ReST クライアントのベスト プラクティス パターンを確立しようとしています。これは、HTTP/ReST を介して Java ベースのバックエンドと通信するフロントエンド エッジに Symfony アプリがある私の会社では非常に一般的な仕事だからです。

私の考えでは、これらのサービスは、問題の特定のドメインのDDDで「リポジトリ」の役割を果たします。Doctrine で指定された規則に基づいて、これらは Entity オブジェクトを返す Repository クラスに入れられます。

ここでも同じ規則が機能すると思います。ReST クライアントは、Guzzle のようなライブラリを使用してリポジトリ クラスを実装するか、単純な Curl を使用するかは問題ではありません。その後、そこにあるコードは、XML または JSON からエンティティへの往復の基本的な変換を行います。上流の開発者が操作するオブジェクト。これは、他の Symfony 2 ユースケースのパターンと一致しており、DDD の観点から理にかなっています。

誰かがこれに問題があるか、それを行うためのより良い方法を見ていますか?

0 投票する
0 に答える
348 参照

basic-authentication - 基本認証はローカルで機能しますが、Travis では機能しません

API を使用するには、いくつかのアクションを実行するために認証を受ける必要があります。テストには Behat + Mink を使用しています。

認証には 2 つの方法があります。ローカル環境と Travis 環境で正常に動作しているトークン (いくつかのパラメーターを指定して POST 要求を送信し、別の場所で使用できるトークンを取得する) のいずれか、または基本認証。

私のローカル環境では、Basic Auth は問題なく動作し、特別な設定をした覚えはありません... しかし、Travis でテストを実行すると、それが考慮されていないようです。

私が言ったように、私は Behat + Mink (+ Goutte であるため、Guzzle も使用しています) を使用しており、リクエストが Curl に送信された後、Authorization ( Authorization: Basic (base64_txt)) を含むヘッダーがちょうど... 消えているようです。私がローカル環境にいるときでも。それでも、ログイン情報は保持されます。しかし、実際には私のローカル環境と何ら変わらないはずの Travis 環境ではありません...

ここに要点リンクがあります。

十分な情報があるかどうかわかりませんが、さらに必要な場合は、遠慮なく言ってください。できる限り提供します。

ありがとう。

0 投票する
3 に答える
4110 参照

php - PHP で application/octet-stream (圧縮されていない gzip ファイル) を処理するには?

大量 (10000 以上) のリモート gzip ファイルを解析する必要があります。圧縮された各ファイルには、その内部 (おそらくフォルダー内) に CSV が含まれている必要があります。現在、本文を取得し、コンテンツ タイプを確認して解凍し、application/octet-stream.

質問: オクテット ストリームとは何ですか? また、その中のファイルやフォルダーを確認するにはどうすればよいですか?

0 投票する
5 に答える
10599 参照

php - ガズルのクエリ文字列を介して配列を送信する

Guzzleクライアントはデフォルトでこのコードから作成します

このURL

RESTfulアプリケーションでクエリ文字列で配列を送信するベストプラクティスは何ですか? 問題は、サーバー側c,dで文字列か配列かを判断するにはどうすればよいかということです。たとえば、角括弧を使用して配列を送信する方がよいのではないa[]=c&a[]=dでしょうか? 角括弧を使用するように Guzzle を設定するにはどうすればよいですか? または、JSON でエンコードされた変数を使用する方がよいでしょうか? サーバー側ではTonicを使用しています。

0 投票する
1 に答える
1113 参照

php - データセンター全体でphpで非同期httpリクエストを作成する方法

HTTP GET / POST リクエストを介して着信イベントを受け入れる Kafka ベースのイベント収集パイプラインに取り組んでいます。Nginx + PHP-FPM で実行されている Web サーバーだけでなく、ユーザーのブラウザーでもイベントを受信できる必要があります。要件の性質上、このパイプラインは伸縮自在でなければならないため、AWS シンガポールにデプロイしますが、クライアント サービス Web サーバーはインドのムンバイにある物理データセンターにあります。これによるレイテンシーを導入したくないため、PHP アプリはリクエストを発行するだけでそれを忘れる必要があります。最初は、最大 5% のリクエストが失われても問題ありません。ムンバイとシンガポール間の往復は約 70 ミリ秒です。どのオプションを使用できますか:-

  • タイムアウトが 100 ミリ秒以下の Curl または fsockopen リクエスト -- 受け入れられない
  • Guzzlecurl-easyなどのライブラリを使用する -- これは内部で curl のみを使用するため、ここでもレイテンシが発生します
  • 要求をファイルにローカルで書き込み、Flume や Kafka などのバスを使用して転送します。基本的には、偶数収集パイプラインを複製することになり、ハードウェア コストが増加します。
  • ギアマンのようなワーカー キューの使用 -- これについては専門家ではないため、長所と短所がわかりません。
  • 太陽の下にあるものはすべて、無料で低メンテナンスを提供します。

提案してください。

0 投票する
0 に答える
4099 参照

php - Goutte 無効化 Guzzle キャッシング

Goutte に問題があるか、実際には Goutte の Guzzle 部分です。

Guzzle はすべての GET 呼び出しを自動的にキャッシュします。無効にしようとしましたが、実際には機能しません。

ここでわかるように、キャッシュ パラメーターを直接 Guzzle コンストラクターに解析しています。

ただし、これは変更を加えません。cacheplugin のドキュメントの時点で (参照: http://guzzlephp.org/guide/http/caching.html )

このコード:

cache.override_ttl の現在の値を出力する必要がありますが、これは何も出力しません。

私が見落としているのは、Goutteラッパーに関するものに違いないと思います。誰にもアイデアはありますか?