我正在运行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吗?我不知道两者之间有什么区别
答案 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中,您需要指定字段参数。