我已经使用浏览器验证了用户。现在我想将这个令牌发送到服务器,服务器必须获取用户的详细信息,如姓,名和电子邮件地址。
我最近在Facebook上做过这个,它很简单,因为它有一个易于使用的库。
我似乎不知道如何使用谷歌图书馆。我正在使用这个库https://code.google.com/p/google-api-dotnet-client/与谷歌API交互。
网上有什么提示或例子可以告诉我怎么做吗?我只知道这是一件非常简单的事情,我可能完全用错了方法。
我需要Stack的智慧!喂我!
var tokeninfoUri = "https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=" + accessToken;
var hc = new HttpClient();
var webResponse = hc.GetAsync(tokeninfoUri).Result;
返回与
类似的JSONpublic string Expires_In { get; set; }
public string Audience { get; set; }
然后调用这个API来获取用户信息
const string userInfoUrl = "https://www.googleapis.com/oauth2/v1/userinfo";
var hc = new HttpClient();
hc.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", authToken);
var webResponse = hc.GetAsync(userInfoUrl).Result;
所以我不需要任何库来帮助我。但如果有一个图书馆能为我做这一切就太好了。我花了好几个小时才弄明白。
. net的Google api客户端库应该可以帮你完成这项工作。所有的api都可以在这里找到:https://developers.google.com/api-client-library/dotnet/apis/
您将需要使用以下API: https://developers.google.com/api-client-library/dotnet/apis/oauth2/v2,它可以在NuGet存储库中获得:http://www.nuget.org/packages/Google.Apis.Oauth2.v2/