Я запускаю php google drive api, и я могу проверить подлинность пользователя просто отлично, но я хочу сохранить его userId и их адрес электронной почты в моей базе данных. permissionid легко доступен сAPI Google Drive получить аутентифицированный адрес электронной почты
$service = new Google_Service_Drive($client);
...
$permissionID = $service->about->get()->getpermissionId();
но нет ничего подобного getEmailAddress()
Есть ли у Google Диска возврата на адрес электронной почты или мне нужно, чтобы расширить сферу охвата и доступ к ней в другом месте?
В настоящее время моя сфера является https://www.googleapis.com/auth/drive
EDIT
только удалось сделать это, делая запрос GET с
https://www.googleapis.com/oauth2/v1/userinfo?access_token=
для людей, которые использовали этот апи раньше, это лучше для хранения PermissionId или идентификатора, возвращаемого запросом на получение? Я не знаю, что разница между этими двумя
В ресурсе About есть пользователь obect, который содержит значения для "permissionId", а также "emailAddress". Вы можете проверить свой ресурс по этой ссылке: https://developers.google.com/drive/v2/reference/about#resource Надеюсь, что это поможет! – KRR
как вы используете 'get()' для получения адреса электронной почты? потому что не существует '$ service-> user-> get() -> getId()' или '$ service-> about-> user-> get() -> getId()' – CrudeCoder
, который никогда не получил просто хаха. 'print_r ($ service-> about-> get() -> getUser())' получает ответ – CrudeCoder