This package provides middleware for guzzle for handling proxy connection using one of the following proxy services:
To install, use composer:
composer require softonic/guzzle-proxy-middleware
To use this middleware, you need to initialize it like:
For Proxy Bonanza:
$proxyManager = new ProxyManager(
new ProxyBonanza(
new GuzzleClient(),
$cache, // A PSR-6 item pool cache.
'<YOUR-USER-PACKAGE-ID>',
'<YOUR-API-KEY>'
)
);
For SSL Private Proxy:
$proxyManager = new ProxyManager(
new SslPrivateProxy(
new GuzzleClient(),
$cache, // A PSR-6 item pool cache.
'<YOUR-API-KEY>'
)
);
And inject it to Guzzle with something like:
$stack = new HandlerStack();
$stack->setHandler(new CurlHandler());
$stack->push($proxyManager);
$guzzleClient = new GuzzleClient(['handler' => $stack]);
From now on every request sent with $guzzleClient
will be done using a random proxy from your proxy list.
softonic/guzzle-proxy-middleware
has a PHPUnit test suite and a coding style compliance test suite using PHP CS Fixer.
To run the tests, run the following command from the project folder.
$ docker-compose run test
To run interactively using PsySH:
$ docker-compose run psysh
The Apache 2.0 license. Please see LICENSE for more information.