私は、Guzzle LibraryのPOOLを使用してPOSTデータを送信しようとしています。しかし、データを送信しているアドレスでPOSTは完全に空です - 私はそれを取得しません。私も試してみましたGuzzleHttps - 非同期を送信する方法。 POST経由のデータ(プールを使用)
$client = new Client();
$requests = function()
{
foreach($this->urls as $url)
{
yield new Request('POST', $url, [
'body' => '...'
]);
}
};
がform_paramsとマルチパート、再び動作しません(POSTは再びも$ _REQUEST & $ _GET空です)。
そしてもちろん(完全性)のコードのこの作品:
$pool = new Pool($client, $requests(), [
'concurrency' => count($this->urls),
'fulfilled' => function ($response) {},
'rejected' => function ($reason) {},
});
$promise = $pool->promise();
$promise->wait();
がつがつ食うには、(第2サーバー上で入力した)正しく要求を送信し、それ自体に任意のデータを持っていません。
私は間違っていますか?ありがとう!
EDIT:
私は(今周期で繰り返される)がつがつ食うと、このコードを置き換えしようとしている:
$ch = curl_init();
$url = 'https://example.cop';
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_USERAGENT, 'mehehe_net');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_NOSIGNAL, 1);
curl_setopt($ch, CURLOPT_TIMEOUT_MS, 59000);
curl_setopt($ch, CURLOPT_POST, true);
$dt = ["data" => json_encode($queue)];
curl_setopt($ch, CURLOPT_POSTFIELDS, $dt);
curl_setopt($ch, CURLOPT_VERBOSE, true);
$cont = curl_exec($ch);
curl_close($ch);