Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Authentication 使用具有不同身份验证设置的guzzle池_Authentication_Guzzle_Pool - Fatal编程技术网

Authentication 使用具有不同身份验证设置的guzzle池

Authentication 使用具有不同身份验证设置的guzzle池,authentication,guzzle,pool,Authentication,Guzzle,Pool,我想使用Guzzle,它将发送几个(~20)请求。我使用asyncRequest是因为我想发送它,然后等待,如果一切都完成了,然后继续,它可能会比单独调用每个请求更快,所以我使用池 问题是,我不知道是否可以使用不同的身份验证调用每个请求,因为池只有带有选项的数组,但它适用于所有请求 还有其他更快的解决方案吗?因为现在响应很慢:当我调用20个API时,大约需要25秒甚至更长时间 我有$api,它是getHeader()中的类,我返回['auth'=>['username','password','

我想使用Guzzle,它将发送几个(~20)请求。我使用asyncRequest是因为我想发送它,然后等待,如果一切都完成了,然后继续,它可能会比单独调用每个请求更快,所以我使用池

问题是,我不知道是否可以使用不同的身份验证调用每个请求,因为池只有带有选项的数组,但它适用于所有请求

还有其他更快的解决方案吗?因为现在响应很慢:当我调用20个API时,大约需要25秒甚至更长时间

我有$api,它是getHeader()中的类,我返回['auth'=>['username','password','digist']]

代码:

代码对于未经授权的页面效果很好,但是如果我需要对页面进行授权,那么可能没有发布授权值

谢谢你的回答

        $requests = function ($apis) {
            foreach ($apis as $api)
            {
                yield new Request($api->getTYPE(),$api->getURL(),$api->getHeader());
            }
        };

        $myresponses = new Pool($client,$requests($array_of_external_apis),['concurrency'=>5,
        'fulfilled'=>function($response,$index)
        {

            resultArray[] = $response;
        },
        'rejected'=> function($reason,$index)
        {

            resultArrayFailed[] = $response;
        }]);
        $promise= $responses->promise();
        $promise->wait();