我正尝试通过最新的Google Data API SDK更新Google日历。Google日历身份验证错误
我的示例代码如下:
string sGoogleUserName = "[email protected]";
string sGooglePassword = "xxxxxxxx";
Uri oCalendarUri = new Uri("http://www.google.com/calendar/feeds/" +
sGoogleUserName + "/private/full");
//Initialize Calendar Service
CalendarService oCalendarService = new CalendarService("CalendarSampleApp");
oCalendarService.setUserCredentials(sGoogleUserName, sGooglePassword);
//Use Proxy
GDataRequestFactory oRequestFactory =
(GDataRequestFactory)oCalendarService.RequestFactory;
WebProxy oWebProxy = new WebProxy(
WebRequest.DefaultWebProxy.GetProxy(oCalendarUri));
oWebProxy.Credentials = CredentialCache.DefaultCredentials;
oWebProxy.UseDefaultCredentials = true;
oRequestFactory.Proxy = oWebProxy;
//Set Event Entry
EventEntry oEventEntry = new EventEntry();
oEventEntry.Title.Text = "Test Calendar Entry From .Net";
oEventEntry.Content.Content =
"Hurrah!!! I posted my first Google calendar event through .Net";
//Set Event Location
Where oEventLocation = new Where();
oEventLocation.ValueString = "New Zealand";
oEventEntry.Locations.Add(oEventLocation);
//Set Event Time
When oEventTime = new When(new DateTime(2011, 5, 31, 9, 0, 0),
new DateTime(2011, 5, 31, 9, 0, 0).AddHours(1));
oEventEntry.Times.Add(oEventTime);
//Set Additional Properties
ExtendedProperty oExtendedProperty = new ExtendedProperty();
oExtendedProperty.Name = "SynchronizationID";
oExtendedProperty.Value = Guid.NewGuid().ToString();
oEventEntry.ExtensionElements.Add(oExtendedProperty);
// CalendarService oCalendarService = GAuthenticate();
//Prevents This Error
//{"The remote server returned an error: (417) Expectation failed."}
System.Net.ServicePointManager.Expect100Continue = false;
//Save Event
oCalendarService.Insert(oCalendarUri, oEventEntry);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
这里是下面的错误
Google.GData.Client.GDataRequestException:在 Google.GData 405:认证 执行请求返回意外的结果.Client.Utilities.getAuthException(TokenCollection标记, HttpWebResponse响应)在 Google.GData.Client.Utilities.QueryClientLoginToken(GDataCredentials GC,弦乐服务名,字符串的applicationName,布尔fUseKeepAlive, IWebProxy访问代理服务器,乌里clientLoginHandler)在 Google.GData.Client.GDataGAuthRequest.QueryAuthToken(在 谷歌在Google.GData.Client.GDataGAuthRequest.EnsureCredentials GDataCredentials GC)() .GData.Client.GDataRequest.EnsureWebRequest()at Google.GData.Client.GDataGAuthRequest.EnsureWebRequest()at Google.GData.Client.GDataGAuthRequest.CopyRequestData()at Google.GData.Client.GDataGAuthRequest.Execute(Int32 retryCounter )at Google.GData.Client.GDataGAuthRequest.Execute()at Google.GData.Client.Service.EntrySend(Uri feedUri,AtomBase baseEntry, GDataRequestType type,AsyncSendData data)at Google.GData.Client.Service.Insert(URI feedUri,AtomEntry newEntry, AsyncSendData数据)在Google.GData.Client.Service.Insert [TEntry](URI feedUri,TEntry条目)
最新版本是2.1 [链接](http://code.google.com/p/google-gdata/downloads/list) 如何设置正确的代理设置? – sevoug