Asp.net mvc 4 如何使用Google.api.Auth.OAuth2.Flows.GoogleAuthorizationCodeFlow从OAuth2.0获取电子邮件ID?

Asp.net mvc 4 如何使用Google.api.Auth.OAuth2.Flows.GoogleAuthorizationCodeFlow从OAuth2.0获取电子邮件ID?,asp.net-mvc-4,oauth-2.0,google-plus,Asp.net Mvc 4,Oauth 2.0,Google Plus,我的问题基本上是如何使用Google.api.Auth.OAuth2.Flows.GoogleAuthorizationCodeFlow从OAuth2.0获取电子邮件ID 我正在使用MVC4应用程序和用于OAuth2.0实现的GoogleAuthorizationCodeFlow。 当页面转到google,用户输入电子邮件ID和密码后 如何从API获取电子邮件ID?有许多oauth作用域提供电子邮件。 在oauth2游乐场中搜索它们。最新的一个是google+范围,用于“使用g+登录”,goog

我的问题基本上是如何使用Google.api.Auth.OAuth2.Flows.GoogleAuthorizationCodeFlow从OAuth2.0获取电子邮件ID

我正在使用MVC4应用程序和用于OAuth2.0实现的GoogleAuthorizationCodeFlow。 当页面转到google,用户输入电子邮件ID和密码后


如何从API获取电子邮件ID?

有许多oauth作用域提供电子邮件。

在oauth2游乐场中搜索它们。最新的一个是google+范围,用于“使用g+登录”,google建议使用该范围,而不是旧的范围。

我想你的答案可以在这里找到。该页面的链接在这篇文章的底部

“第一步是根据已知的用户ID调用#loadCredential(字符串),检查最终用户的凭据是否已知。如果未知,则调用newAuthorizationUrl(),并将最终用户的浏览器指向授权页面。然后,web浏览器将使用“代码”重定向到重定向URL“查询参数,可用于使用newTokenRequest(字符串)请求访问令牌。最后,使用#createAndStoreCredential(TokenResponse,String)存储并获取访问受保护资源的凭据。”


在googleapi中授权后。您将获得acees\u令牌、refresh\u令牌等以及id\u令牌。id\u令牌是一个包含电子邮件字段的字符串。但它是base64编码格式。因此,您必须使用base64\u解码对id\u令牌字符串进行解码。id\u令牌是由“.”附加的coantains 2 stirng。scond字符串包含ema的肉类数据il、cilent id等。

在哪里可以获得代码示例(MVC或.Net)用于在用户登录oAuth 2.0实现中的Google身份验证屏幕后获取电子邮件地址。我之前已经这样做了,在本网站中没有与我的查询相关的参考。关于oAuth 2游乐场,我无法获得任何示例代码。虽然链接到官方文档很好,但也可以用您自己的话解释原因和如何解决实际问题。逐字复制其他网站的文本也可能会带来版权问题。