public function miniorange_oauth_clientController::getResourceOwner in Drupal OAuth & OpenID Connect Login - OAuth2 Client SSO Login 8
1 call to miniorange_oauth_clientController::getResourceOwner()
File
- src/
Controller/ miniorange_oauth_clientController.php, line 377 - Contains \Drupal\miniorange_oauth_client\Controller\DefaultController.
Class
Namespace
Drupal\miniorange_oauth_client\ControllerCode
public function getResourceOwner($resourceownerdetailsurl, $access_token) {
$ch = curl_init($resourceownerdetailsurl);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_MAXREDIRS, 10);
curl_setopt($ch, CURLOPT_POST, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Authorization: Bearer ' . $access_token,
));
$t_vers = curl_version();
curl_setopt($ch, CURLOPT_USERAGENT, 'curl/' . $t_vers['version']);
$content = curl_exec($ch);
if (curl_error($ch)) {
exit(curl_error($ch));
}
if (!is_array(json_decode($content, true))) {
exit("Invalid response received.");
}
$content = json_decode($content, true);
if (isset($content['@odata.context'])) {
unset($content['@odata.context']);
}
if (isset($content["error_description"])) {
if (is_array($content["error_description"])) {
print_r($content["error_description"]);
}
else {
echo $content["error_description"];
}
exit;
}
else {
if (isset($content["error"])) {
if (is_array($content["error"])) {
print_r($content["error"]);
}
else {
echo $content["error"];
}
exit;
}
}
return $content;
}