From 152dedd4be10654e8b1101a4c306cf914c0265ed Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Mon, 23 Oct 2017 22:31:07 +0200 Subject: [PATCH] POC done! --- composer.json | 6 ++++++ proxy.php | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 composer.json create mode 100644 proxy.php diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..d413b89 --- /dev/null +++ b/composer.json @@ -0,0 +1,6 @@ +{ + "require": { + "phly/http": "^0.14.1", + "guzzlehttp/guzzle": "~6.0" + } +} diff --git a/proxy.php b/proxy.php new file mode 100644 index 0000000..b24a579 --- /dev/null +++ b/proxy.php @@ -0,0 +1,55 @@ +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() +));