2013-08-09 2 views
0

Я пытался из Google Calendar API от this sample code, но я получаю следующее сообщение об ошибке:Google Calendar API Error 405

Execution of authentication request returned unexpected result: 405 

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: Google.GData.Client.GDataRequestException: Execution of authentication request returned unexpected result: 405 

трассировки стека:

трассировки стека:

[GDataRequestException: Execution of authentication request returned unexpected result: 405]
_2.BusinessLogicLayer.LogicClasses.LeaveLogic.AddToGoogleCalendar() in C:\Users\Samsung\Desktop\Development\Ticketing system\2.BusinessLogicLayer\LogicClasses\LeaveLogic.cs:375
_1.PresentationLayer.WebPages.LeaveRequest.tstbtn_Click(Object sender, EventArgs e) in C:\Users\Samsung\Desktop\Development\Ticketing system\1.PresentationLayer\WebPages\LeaveRequest.aspx.cs:403
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9553594
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +103
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1724

Код:

string sGoogleUserName = "******@gmail.com"; 
      string sGooglePassword = "*****"; 
      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); 

ответ

1

Комментировать часть прокси-сервера:

////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;