mirror of
https://github.com/ovh/php-ovh.git
synced 2023-11-05 03:20:26 +01:00
Introduce a decodeResponse
method.
This new method allow to perform a `rawCall` call and retrieve the full response instance. It'll help to manipulate response more easily. Signed-off-by: Stéphane HULARD <s.hulard@chstudio.fr>
This commit is contained in:
parent
25a97501a1
commit
940ec307fb
34
src/Api.php
34
src/Api.php
@ -192,11 +192,13 @@ class Api
|
||||
$parameters->redirection = $redirection;
|
||||
|
||||
//bypass authentication for this call
|
||||
$response = $this->rawCall(
|
||||
$response = $this->decodeResponse(
|
||||
$this->rawCall(
|
||||
'POST',
|
||||
'/auth/credential',
|
||||
$parameters,
|
||||
false
|
||||
)
|
||||
);
|
||||
|
||||
$this->consumer_key = $response["consumerKey"];
|
||||
@ -220,7 +222,6 @@ class Api
|
||||
{
|
||||
$url = $this->endpoint . $path;
|
||||
$request = new Request($method, $url);
|
||||
|
||||
if (isset($content) && $method == 'GET') {
|
||||
|
||||
$query_string = $request->getUri()->getQuery();
|
||||
@ -261,7 +262,6 @@ class Api
|
||||
} else {
|
||||
$body = "";
|
||||
}
|
||||
|
||||
$headers = [
|
||||
'Content-Type' => 'application/json; charset=utf-8',
|
||||
'X-Ovh-Application' => $this->application_key,
|
||||
@ -285,8 +285,18 @@ class Api
|
||||
}
|
||||
|
||||
/** @var Response $response */
|
||||
$response = $this->http_client->send($request, ['headers' => $headers]);
|
||||
return $this->http_client->send($request, ['headers' => $headers]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Decode a Response object body to an Array
|
||||
*
|
||||
* @param Response $response
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
private function decodeResponse(Response $response)
|
||||
{
|
||||
return json_decode($response->getBody(), true);
|
||||
}
|
||||
|
||||
@ -301,7 +311,9 @@ class Api
|
||||
*/
|
||||
public function get($path, $content = null)
|
||||
{
|
||||
return $this->rawCall("GET", $path, $content);
|
||||
return $this->decodeResponse(
|
||||
$this->rawCall("GET", $path, $content)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -315,7 +327,9 @@ class Api
|
||||
*/
|
||||
public function post($path, $content = null)
|
||||
{
|
||||
return $this->rawCall("POST", $path, $content);
|
||||
return $this->decodeResponse(
|
||||
$this->rawCall("POST", $path, $content)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -329,7 +343,9 @@ class Api
|
||||
*/
|
||||
public function put($path, $content)
|
||||
{
|
||||
return $this->rawCall("PUT", $path, $content);
|
||||
return $this->decodeResponse(
|
||||
$this->rawCall("PUT", $path, $content)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -343,7 +359,9 @@ class Api
|
||||
*/
|
||||
public function delete($path, $content = null)
|
||||
{
|
||||
return $this->rawCall("DELETE", $path, $content);
|
||||
return $this->decodeResponse(
|
||||
$this->rawCall("DELETE", $path, $content)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user