Simple PHP proxy.
Simple PSR-18 HTTP client based on PHP's native stream socket.//
Just use Composer:
composer require semperton/proxy
Proxy requires PHP 7.1+
The client does not come with a PSR-17 request/response factory by itself. You have to provide one in the constructor.
use HttpSoft\Message\ResponseFactory; use Semperton\Proxy\Client; $client new Client( new ResponseFactory(), // any PSR-17 compilant response factory 5, // request timeout in secs $options, // array of stream context options 4096 // buffer size used to read/write request body );
The client exposes only one public method
use HttpSoft\Message\RequestFactory; use Psr\Http\Message\ResponseInterface; $requestFactory = new RequestFactory(); $request = $requestFactory->createRequest('GET', 'https://google.com'); $response = $client->sendRequest($request); $response instanceof ResponseInterface // true
This is just a very simple HTTP client for single requests. If you are going to do heavy API work (multiple asynchronous requests, body parsing, etc.), you should consider using