2011-08-09 15 views
8

estoy usando los contactos de Google Data API para obtener todos los contactos del usuario a raíz de la documentación aquí https://developers.google.com/google-apps/contacts/v3/contactos de Google API de datos 401 de error

primero que utilicé Google de autenticación para autenticar a los usuarios a la aplicación con el código siguiente

string authSubUrl = AuthSubUtil.getRequestUrl("http://localhost:62439/ContactImporter/GoogleContacts.aspx", "https://www.google.com/m8/feeds/", true, true); 
    Response.Redirect(authSubUrl); 

segundos después de usuario loged con éxito en vuelvo a dirigir a la página GoogleContacts.aspx con el token de solicitud proporcionada por Google y luego tratar de obtener los contactos por el siguiente código

if (!string.IsNullOrEmpty(Request["token"])) 
{ 
    GAuthSubRequestFactory authFactory = new GAuthSubRequestFactory("cp", "alpha"); 
    RequestSettings rs = new Google.GData.Client.RequestSettings("alpha",Request["token"]); 
    ContactsRequest cr = new ContactsRequest(rs); 

    Feed<Contact> f = cr.GetContacts(); 

    foreach (Contact entry in f.Entries) 
    { 
     foreach (EMail email in entry.Emails) 
     { 
      Response.Write("\n" + email.Address); 
     } 
    } 
} 

que el código estaba trabajando desde alrededor de 4 o 5 días, pero ahora no su trabajo y me pone el siguiente error

The remote server returned an error: (401) Unauthorized. at Google.GData.Client.GDataRequest.Execute() at Google.GData.Client.GDataGAuthRequest.Execute(Int32 retryCounter) at Google.GData.Client.GDataGAuthRequest.Execute() at Google.GData.Client.Service.Query(Uri queryUri, DateTime ifModifiedSince, String etag, Int64& contentLength) at Google.GData.Client.Service.Query(Uri queryUri, DateTime ifModifiedSince) at Google.GData.Client.Service.Query(FeedQuery feedQuery) at Google.GData.Client.Feed 1.get_AtomFeed() at Google.GData.Client.Feed 1.d__0.MoveNext() at GoogleContacts.Page_Load(Object sender, EventArgs e) in d:\Working Folder\API's\ContactImporter\GoogleContacts.aspx.cs:line 25 at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) at System.Web.UI.Control.OnLoad(EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

¿Alguna sugerencia sobre cómo resolver ese error?

+0

página http://code.google.com/apis/contacts/docs/3.0/developers_guide.html que no se encuentra –

+0

Un tema ha sido iniciado en los foros de Google: [aquí] (http://productforums.google.com/forum/#! topic/gmail/-qeBgCFsRhs). Tal vez Google responda nuestras preguntas ... – Max

+0

¿Alguna solución final con el código fuente completo de la muestra trabajando al respecto? – Kiquenet

Respuesta

2

Esta no será la respuesta que está buscando, pero puedo dejar su mente de lado. No hay nada de malo en tu código. Google eliminó el servicio API de Contactos recientemente, sin previo aviso. Nadie sabe si lo han dejado obsoleto o lo han eliminado por alguna otra razón. Desde ayer, incluso han eliminado la documentación de la API. Sin embargo, el enlace al mismo todavía se publica en su lista de API al https://developers.google.com/google-apps/app-apis ya no hay documentación alguna y ninguna explicación de Google por qué se cerró. Espero que no sea algo permanente. Google aún tiene que responder a los desarrolladores sobre este tema.

+0

Ojalá hubiera notado esta respuesta antes de que expire la recompensa. En realidad responde la pregunta. Lo siento te extrañé. – jettero

+0

¿Incluso hasta hoy todavía está abajo? –

Cuestiones relacionadas