我正在尝试构建一个 C# 应用程序来查询我的谷歌联系人,并将它们打印到控制台。
电子邮件地址是:bhmi12@gmail.com 非常好是谷歌应用程序的名称。
我有两个问题:
每次运行应用程序时我必须调用的第一个问题:
string url = OAuthUtil.CreateOAuth2AuthorizationUrl(parameters);
浏览 URL 并获得一个新的 AccessCode,即使谷歌声称你只需要这样做一次。然后你得到一个访问令牌。
第二个问题是这段代码不起作用,当它转到 PrintAllContacts 时,它在一个奇怪的异常下失败:
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);
}
}