Advertisement
Guest User

Untitled

a guest
Jul 17th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. <?php
  2. // http client making a request to github api
  3. require_once __DIR__ . '/vendor/autoload.php';
  4. use Bunny\Async;
  5. $loop = React\EventLoop\Factory::create();
  6. $dnsResolverFactory = new React\Dns\Resolver\Factory();
  7. $dnsResolver = $dnsResolverFactory->createCached('8.8.8.8', $loop);
  8. $factory = new React\HttpClient\Factory();
  9. $client = $factory->create($loop, $dnsResolver);
  10. $connection = [
  11. 'host' => 'black-boar.rmq.cloudamqp.com',
  12. 'vhost' => 'gespngvv', // The default vhost is /
  13. 'user' => 'gespngvv', // The default user is guest
  14. 'password' => 'bgYQ8mwoyq5e5q_-UFCJyDCgb0L_936-', // The default password is guest
  15. ];
  16. $connection = new Async\Client($loop, $connection);
  17. $connection->connect()->then(function ($client) {
  18. return $client->channel();
  19. })->then(function ($channel) {
  20. return $channel->qos(0, 10)->then(function () use ($channel) {
  21. return $channel;
  22. });
  23. })->then(function ($channel) use ($client) {
  24. $channel->consume(
  25. function ($message, $channel, $client) use ($client) {
  26. echo 'new message' . PHP_EOL;
  27. $request = $client->request('GET', 'https://www.google.com');
  28. $request->on('response', function ($response) use ($channel, $message) {
  29. $buffer = '';
  30. $response->on('data', function ($data) use (&$buffer) {
  31. $buffer .= $data;
  32. });
  33. $response->on('end', function () use (&$buffer, $channel, $message) {
  34. echo 'request done' . PHP_EOL;
  35. $channel->ack($message);
  36. });
  37. });
  38. $request->end();
  39. },
  40. 'phpqueue'
  41. );
  42. })->done();
  43. $loop->run();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement