获取客户端 PHP 的电子邮件 ID



我想要 所以我按照下一页

给出的说明进行操作

https://developers.google.com/api-client-library/php/auth/web-app但是,目前尚不清楚如何获取当前登录用户的电子邮件 ID。我目前设置的范围是读取此人的个人资料,他的电子邮件ID和gmail.readonly(阅读所有电子邮件)。
我的问题是,假设我有访问令牌,并且我已经通过设置访问令牌初始化了Google_Client对象,如何获取当前登录用户的电子邮件?

呵,看起来我只需要找到合适的谷歌服务。通过浏览文档得到了这个。

https://developers.google.com/resources/api-libraries/documentation/gmail/v1/php/latest/class-Google_Service_Gmail.html现在的代码是:

$gmail = new Google_Service_Gmail($client);
if($client->getAccessCode()) {
    $token_data = $client->verifyAccessToken();
    $email = $token_data['email'];
}

此外,由于某种原因,带有 $token_data 的行似乎不起作用,因此我最终使用 REST API 来验证访问令牌。只需将该行
替换为

$token_data = json_decode(file_get_contents('https://www.googleapis.com/oauth2/v1/tokeninfo?access_token='.urlencode($client->getAccessToken()["access_token"])), true);

最新更新