getStatusCode()); foreach ($response->getHeaders() as $header => $values) { header(sprintf('%s: %s', $header, implode(', ', $values))); } echo $response->getBody(); } function doRequest(ServerRequest $request, Client $client) { $headers = []; foreach ($request->getHeaders() as $name => $value) { $headers[$name] = $value[0]; } $url = sprintf( 'https://bittrex.com/api/v1.1/%s', ltrim($request->getServerParams()['PATH_INFO'], '/') ); unset($headers['host']); return $client->request( $request->getMethod(), $url, [ 'headers' => $headers, 'body' => $request->getBody(), ] ); } $apiResponse = doRequest( ServerRequestFactory::fromGlobals(), new Client() ); send(new Response( $apiResponse->getBody(), $apiResponse->getStatusCode(), $apiResponse->getHeaders() ));