Я использую клиент Google google для доступа к API календаря и электронной почты Google, но все же мне нужно получить данные профиля пользователя

С помощью клиента Google php я мог получить код доступа и обновить код. Я пытаюсь получить данные профиля пользователя, чтобы я мог создать пользователя в своем веб-приложении. но всегда я получаю 401 ошибку.

Message: { "error": { "errors": [ { "domain": "global", "reason": "authError", "message": "Invalid Credentials", "locationType": "header", "location": "Authorization" } ], "code": 401, "message": "Invalid Credentials" } } 

Код:

        credentialsFile = 'client_secret.json';
        $this->client = new Google_Client();
        $this->client->setApplicationName('myprojectname');
        $this->client->setScopes(array(
           'https://www.googleapis.com/auth/plus.me',
           'https://www.googleapis.com/auth/userinfo.email',
           'https://www.googleapis.com/auth/userinfo.profile'
         ));
         $this->client->setAuthConfig($credentialsFile);
         $this->client->setAccessType('offline');
         $this->client->setApprovalPrompt('force');

После $this->client->createAuthUrl(); и перенаправить на этот URL, я получаю окно согласия и после разрешения я возвращаюсь к своему URL перенаправления без каких-либо ошибок. Также я получаю access_token и refresh_token.

в перенаправленной функции я пытаюсь получить детали профиля пользователя. в этом и заключается ошибка 401.

$google_oauth = new Google_Service_Oauth2($this->client);
$google_account_email = $google_oauth->userinfo->get()->email;
echo "<pre>";
print_r($google_account_email);
echo "</pre>";

Может ли кто-нибудь помочь мне в этом. Я попробовал все возможные ответы, у меня все еще не было шансов.

0 ответов

Другие вопросы по тегам