Я использую клиент Google PHP для доступа к API календаря и электронной почты Google, но все же мне нужно получить данные профиля пользователя - PullRequest
0 голосов
/ 12 сентября 2018

С помощью клиента 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.

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

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

...