2016-08-05 85 views
0

我需要找到用户对他的gmail帐户的身份验证请求的响应,实际上我试图发送有关从开发者帐户到用户的身份验证的邮件。当用户单击“允许”时,日历事件将在其日历中创建。如何识别允许的用户谷歌日历api授权请求gmail帐户

但是,当他们拒绝时,异常弹出说明未经授权的用户。我需要找到用户的邮件ID以及用户在接受还是拒绝?是的,我试过 this link

例子:

https://www.googleapis.com/oauth2/v1/userinfo?alt=json&access_token=ya29.Ci82A9-AcdxxjkatYj5NxwaxmJJybeOq7JwqhBUOCYpFM9xpBKHrWlEVULea4OfM_Q

,但我得到的错误:

{ 
    "error": { 
    "errors": [ 
     { 
      "domain": "global", 
      "reason": "insufficientPermissions", 
      "message": "Insufficient Permission" 
     } 
     ], 
     "code": 403, 
     "message": "Insufficient Permission" 
    } 
    } 

需要帮助家伙。

回答

1

你是如何在第一个地方获得上述access_token“ya29.Ci82A9-AcdxxjkatYj5NxwaxmJJybeOq7JwqhBUOCYpFM9xpBKHrWlEVULea4OfM_Q”?

如果您提供适当的认证范围并在范围字符串中添加“email”(也可能是“profile”或“openid”),您将能够检索认证用户的电子邮件地址(以及其他profile/openid细节)。

无论如何,我怀疑你遇到的问题是由于指定的范围不正确。

https://developers.google.com/identity/protocols/OpenIDConnect

+0

范围工作正常@ some1但我无法找到用户帐户电子邮件。 –

+0

您应该将'scope = https:// www.googleapis.com/auth/calendar'更改为'scope = https:// www.googleapis.com/auth/calendar%20openid%20email'(即,将额外的“电子邮件“和”openid“范围)。与此同时,你会在回复中得到一个“id_token”。电子邮件地址被嵌入到tahat“id_token”中。有关详细参考和示例,请参阅上述URL。 – some1

0
+0

如何在此场景中查找帐户详细信息? –