/** * Generates request for HTTP Client (API), and add event listners * * @param string $method * @param string $url * @param array $headers * * @return React\HttpClient\Request */ protected function createClientRequest($method, $url, $headers) { $request = $this->client->request($method, $url, $headers); foreach ($this->listeners as $event => $listeners) { $request->on($event, function () use($event) { $this->emit($event, func_get_args()); }); } return $request; }