Use JSON only – other types are errors

This commit is contained in:
trogwar
2016-06-30 06:52:36 +03:00
parent 781c3cac39
commit ad18ce7d7b

View File

@@ -12,8 +12,6 @@ use Psr\Http\Message\ResponseInterface;
class Vkontakte extends AbstractProvider
{
public $scopes = ['email'];
public $uidKey = 'user_id';
public $responseType = 'json';
public function getBaseAuthorizationUrl()
{
@@ -76,20 +74,12 @@ class Vkontakte extends AbstractProvider
}
$responseBody = $response->getBody()->getContents();
switch ($this->responseType) {
case 'json':
$result = json_decode($responseBody, true);
if (JSON_ERROR_NONE !== json_last_error()) {
$result = [];
}
break;
case 'string':
parse_str($responseBody, $result);
break;
}
if (isset($result['error']) && ! empty($result['error'])) {
// @codeCoverageIgnoreStart
throw new IdentityProviderException($result['error_description'], $response->getStatusCode(), $responseBody);