2

私はcurl_multi_exec()複数のウェブサイトを並行してリクエストしていました。URL1、、、、と言っURL2URL3ください。これらの Web サイトのいずれかが結果を返すとすぐに、それを処理して次の応答を待つことができます。

ここで、リクエストのレスポンスに基づいて、この結果がどの URL から来たのかを知る必要があります。リダイレクトがある可能性があるため、応答から URL を単純に確認することはできません。では、応答がどの URL ( URL1URL2、または) から来たかを識別する最善の方法は何でしょうか? URL3からの情報curl_multi_info_read()またはcurl_getinfo()何らかの形でそのために使用できますか? そのために設定して要求できる cURL オプションはありますか?

また、URL を要求する前に cURL ハンドラーを保存して比較しようとしましたcurl_multi_info_read($curlMultiHandle)['handle']が、これはリソースであるため、実際には比較できません。

何か案は?

4

2 に答える 2

2

カスタムデータを添付して扱うことが可能

curl_setopt($handle, \CURLOPT_PRIVATE, json_encode(['id' => $query_id]));

そして、このデータを取得します

curl_getinfo($handle, \CURLINFO_PRIVATE);
于 2015-08-03T12:30:16.303 に答える