Skip to content

Commit 551d85f

Browse files
committed
Simplify Async example
1 parent a3e6627 commit 551d85f

File tree

1 file changed

+6
-28
lines changed

1 file changed

+6
-28
lines changed

README.md

+6-28
Original file line numberDiff line numberDiff line change
@@ -271,35 +271,13 @@ Since PHP 8.1, fibers are introduced to PHP.
271271
This means that you can use any fiber based PSR-18 client in order to send async calls.
272272

273273
Here is a short example for `react/http` in combination with `react/async`.
274-
Your PSR-18 client might look like this:
275274

276-
```php
277-
use Http\Client\HttpClient;
278-
use Psr\Http\Message\RequestInterface;
279-
use Psr\Http\Message\ResponseInterface;
280-
use React\Http\Browser;
281-
use function React\Async\await;
275+
```sh
276+
composer require react/async veewee/psr18-react-browser
277+
```
282278

283-
final class AsyncPsr18Browser implements HttpClient
284-
{
285-
public function __construct(
286-
private Browser $browser
287-
){
288-
}
279+
*(There currently is no official fiber based PSR-18 implementation of either AMP or ReactPHP. Therefore, [a small bridge can be used intermediately](https://github.com/veewee/psr18-react-browser))*
289280

290-
public function sendRequest(RequestInterface $request): ResponseInterface
291-
{
292-
return await(
293-
$this->browser->request(
294-
$request->getMethod(),
295-
(string) $request->getUri(),
296-
$request->getHeaders(),
297-
(string) $request->getBody()
298-
)
299-
);
300-
}
301-
}
302-
```
303281

304282
Usage:
305283

@@ -312,12 +290,12 @@ use Soap\ExtSoapEngine\Wsdl\TemporaryWsdlLoaderProvider;
312290
use Soap\Psr18Transport\Psr18Transport;
313291
use Soap\Psr18Transport\Wsdl\Psr18Loader;
314292
use Soap\Wsdl\Loader\FlatteningLoader;
293+
use Veewee\Psr18ReactBrowser\Psr18ReactBrowserClient;
315294
use function React\Async\async;
316295
use function React\Async\await;
317296
use function React\Async\parallel;
318297

319-
$browser = new React\Http\Browser();
320-
$asyncHttpClient = new Psr18Browser($browser);
298+
$asyncHttpClient = Psr18ReactBrowserClient::default();
321299
$engine = new SimpleEngine(
322300
ExtSoapDriver::createFromClient(
323301
$client = AbusedClient::createFromOptions(

0 commit comments

Comments
 (0)