Google Drive API会通过身份验证的电子邮件

时间:2015-02-21 20:47:06

标签: php google-drive-api

我正在运行php google drive api,我可以很好地验证用户,但我想将用户的permissionId和他们的电子邮件地址存储到我的数据库中。

可以轻松访问permissionid
$service = new Google_Service_Drive($client);
...
$permissionID = $service->about->get()->getpermissionId();

但是没有getEmailAddress()之类的内容google驱动器是否有电子邮件地址的回复,或者我是否需要扩展范围并在其他地方访问它?

目前我的范围是https://www.googleapis.com/auth/drive

修改

只是通过使用

执行get请求来实现此目的
https://www.googleapis.com/oauth2/v1/userinfo?access_token=

对于之前使用过此api的人来说,最好存储PermissionId或get请求返回的ID吗?我不知道两者之间有什么区别

2 个答案:

答案 0 :(得分:1)

$service->about->get()->getUser()->getemailAddress();

这将为您提供通过您的应用进行身份验证的用户的电子邮件地址。

正如上面提到的KRR,访问Google's Drive Api Reference Page 了解更多功能。通常,如果您想获取属性值,则采用get($propertyname)()

的形式

答案 1 :(得分:0)

CrudeCoder给出的答案对于 Drive API v2 是正确的。对于 Drive API V3 ,请使用:

$service->about->get(array('fields' => 'user'))->getUser()->getemailAddress();

在V3中,您需要指定字段参数。