2011-12-20 17 views
5

Estoy trabajando en el calendario de google y tengo problemas con la sincronización de datos entre mi aplicación de calendario en Iphone a Google Calendar. (Yo uso google api v3) El problema es: puedo actualizar un evento por código solo 1 vez después de haberlo creado. La próxima vez que intento actualizarlo, aparece el mensaje 400: solicitud incorrecta.Google Calendar api v3 nuevo problema

Podemos utilizar Google Calendar explorar para probar esto (https://code.google.com/apis/explorer/#_s=calendar & _v = v3 & _m = calendars.update) mediante la creación de un evento y luego actualizarlo 2 veces

¿Alguien cumple con este problema?

+0

¿Ha encontrado la solución? – Sharj

Respuesta

3

No puede actualizar el mismo evento dos veces. En su lugar, base su segunda solicitud de actualización en los datos del nuevo evento que se pasa a la devolución de llamada en la primera llamada de actualización (que tiene una nueva eTag) para actualizarla por segunda vez.

+0

hey, estoy enfrentando el mismo problema cuando trabajo con google-api-ruby-client. ¿Sabes cómo enviar etag con solicitud? http://stackoverflow.com/questions/10332255/google-calendar-api-v3-update-event – Sharj

+0

+1 Esto resolvió el mismo problema que estaba teniendo en Google Apps Script. – Fuhrmanator

9

tenía este mismo problema y tiene la respuesta aquí: Google Calendar API v3 - Update Event

Puede editar el mismo evento dos veces, sólo hay que 'conseguir' la secuencia de eventos

$event = $service->events->get("primary", $exist); 

$seq=$event['sequence']; 

y utilizar $event->setSequence($seq)

al configurar los detalles de su evento de actualización.

1

Aquí está un ejemplo de código Java en cómo actualizar utilizando la secuencia:

Event updatedEvent; 
Calendar Service; 

updatedEvent.setSequence(Service.events().get(mCalendarId, updatedEvent.getId()).execute().getSequence()); 
Service.events().update(mCalendarId, updatedEvent.getId(), updatedEvent).execute();