加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 从Dotnet Google API获取用户电子邮件信息

发布时间:2020-12-16 01:54:30 所属栏目:百科 来源:网络整理
导读:我已经为gData和Drive C#API两个单独的Oauth2实现,分别在OAuth2Parameters和AuthorizationState中存储令牌信息.我能够刷新令牌并将它们用于必要的API调用.我正在寻找一种方法来使用它来获取用户的信息,主要是电子邮件地址或域. 我尝试按照Retrieve OAuth 2.0
我已经为gData和Drive C#API两个单独的Oauth2实现,分别在OAuth2Parameters和AuthorizationState中存储令牌信息.我能够刷新令牌并将它们用于必要的API调用.我正在寻找一种方法来使用它来获取用户的信息,主要是电子邮件地址或域.

我尝试按照Retrieve OAuth 2.0 Credentials的演示,但是我收到类似于rapsalands的问题here的编译错误,说出来

can't convert from
'Google.Apis.Authentication.OAuth2.OAuth2Authenticator<
Google.Apis.Authenticatio??n.OAuth2.DotNetOpenAuth.NativeApplicationClient>'
to 'Google.Apis.Services.BaseClientService.Initializer'.

我抓住了Oauth2 api dlls的最新版本,所以我不认为就是这样.

所有其他code samples我正在看到使用UserInfo API提及,但我找不到任何类型的C#/ dotnet api,我可以使用它而不需要直接执行GET / POST请求.

有没有办法使用我已经拥有的一个C#apis的令牌获取此信息而不会发出新的HTTP请求?

解决方法

您需要使用Oauth2Service来检索有关用户的信息.

Oauth2Service userInfoService = new Oauth2Service(credentials);
Userinfo userInfo = userInfoService.Userinfo.Get().Fetch();

Oauth2Service可在以下库中找到:https://code.google.com/p/google-api-dotnet-client/wiki/APIs#Google_OAuth2_API

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读