第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在不使用代理的情況下通過 guzzle 發(fā)送異步請求

如何在不使用代理的情況下通過 guzzle 發(fā)送異步請求

PHP
FFIVE 2022-08-05 16:36:26
我正在嘗試通過php guzzle異步向instagram網(wǎng)站發(fā)送100個請求,如下所示:$client = new Client();$promises = [];for($i = 1; $i <= 100; $i++){    $options = ['timeout' => 60];    $promise = $client->getAsync("https://www.instagram.com/p/B7IoQYhACcF/", $options)            ->then(function($response){                return $response;            }, function($exception){                return [                    'msg' => $exception->getMessage(),                ];            });       $promises[$i] = $promise;}之后,我嘗試打印請求狀態(tài):foreach ($promises as $key => $promise){    $response = $promise->wait();    if(is_array($response))    {        echo "{$key}) error: {$response['msg']} <br/>";        continue;    }    echo "{$key}) {$response->getStatusCode()} {$response->getReasonPhrase()} <br/>";}阿科但這里的問題是什么?問題是只有前20個(或更多)請求是可以的,其他請求沒有解決。
查看完整描述

1 回答

?
慕少森

TA貢獻2019條經(jīng)驗 獲得超9個贊

Guzzle afaik在后臺使用的函數(shù)curl_multi()只允許一次特定數(shù)量的并行請求。您可能希望像這樣將該數(shù)字配置得更高


curl_multi_setopt($curlHandle, CURLMOPT_MAXCONNECTS, 100)

和/或在此處查看其他 curl 多選項。


現(xiàn)在您可能想知道如何在gozule使用的卷曲手柄上設(shè)置該選項。根據(jù)這一點,您可以將 curl 選項作為數(shù)組傳遞給 Handlerstack。


摘自鏈接文檔:


use \GuzzleHttp\Client;

use \GuzzleHttp\HandlerStack;

use \GuzzleHttp\Handler\CurlMultiHandler;


$client = new Client(['handler' => HandlerStack::create(new CurlMultiHandler([

    'options' => [

        CURLMOPT_MAX_TOTAL_CONNECTIONS => 50,

        CURLMOPT_MAX_HOST_CONNECTIONS => 5,

    ]

]))]);

請注意,示例中提到的選項也可能與您的情況相關(guān)。


查看完整回答
反對 回復(fù) 2022-08-05
  • 1 回答
  • 0 關(guān)注
  • 135 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號