谷歌API a v3查询谷歌联系人NET
问题描述:
我想建立一个C#应用程序,查询我的谷歌联系人,并打印到控制台。谷歌API a v3查询谷歌联系人NET
电子邮件地址是:[email protected] 优秀是谷歌应用程序的名称。
我有两个问题:
第一我每次运行应用程序时问题我要打电话:
string url = OAuthUtil.CreateOAuth2AuthorizationUrl(parameters);
冲浪的URL,并得到一个新的AccessCode甚至认为谷歌宣称ü只需要做一次。然后你得到一个访问令牌。
第二个问题的是,这个代码不工作,当它进入PrintAllContacts它failes一个奇怪的例外情况:
There is some error in your request thats all we know"(the google response
to my request).
这是写的范围以正确的方式? 非常感谢。 代码:
{
OAuth2Parameters parameters = new OAuth2Parameters();
parameters.ClientId = @"my id";
parameters.ClientSecret = @"my secret";
parameters.RedirectUri = @"urn:ietf:wg:oauth:2.0:oob";
parameters.ResponseType="code";
parameters.Scope = @"https://www.google.com/m8/feeds/contacts/bhmi12%40gmail.com/full";
//string url = OAuthUtil.CreateOAuth2AuthorizationUrl(parameters);
parameters.AccessCode = @"";
try
{
OAuthUtil.GetAccessToken(parameters);
//OAuthUtil.RefreshAccessToken(parameters);
var contacts = new ContactsRequest(new RequestSettings("excellent", parameters));
PrintAllContacts(contacts);
}
catch (GDataRequestException e)
{
Console.WriteLine("Operation failed ({0}): {1}", e.Message, e.ResponseString);
}
}
答
号的范围是如下恒定字符串值,看起来像一个URL: “的htt PS://www.googleapis.com/auth/contacts.readonly”
如果您打算修改用户的联系人,然后用这个来代替: “HTT PS://www.google.com/m8/feeds”
参考:https://developers.google.com/google-apps/contacts/v3/#authorizing_requests_with_oauth_20
一个很好的开始将在这里https://code.google.com/p/google-api-dotnet-client/ – DaImTo 2015-02-25 11:44:51