sto giocando intorno con l'interfaccia di programmazione di Google Calendar all'indirizzo:API Google Calendar: TimeZone non preso in considerazione da google server?
https://developers.google.com/google-apps/calendar/v3/reference/events/insert#try-it
Quando eseguo la seguente richiesta ottengo la seguente risposta:
Richiesta:
POST https://www.googleapis.com/calendar/v3/calendars/o38t4tnqifv4kdanjkmegs2uqk%40group.calendar.google.com/events?key={YOUR_API_KEY}
Content-Type: application/json
Authorization: Bearer ya29.AHES6ZRv_qi4OhIhzN1C8YifUSO4mmXjufeKhaPmbyaRw3FVhXIgJQ
X-JavaScript-User-Agent: Google APIs Explorer
{
"end": {
"dateTime": "2013-04-07T20:30:00.01Z"
},
"start": {
"dateTime": "2013-04-07T19:30:00.01Z"
},
"description": "Just testing, 2003.",
"extendedProperties": {
"private": {
"foo": "bar"
}
},
"summary": "Hello World 1"
}
di risposta:
200 OK
- Show headers -
{
"kind": "calendar#event",
"etag": "\"78Bu1G8fWt0vPGZK2Ckfad3ZtNE/Z2NhbDAwMDAxMzY4NzE0MzM1NTc3MDAw\"",
"id": "e2pfv3men0e9r5mv4qp7hrsqs8",
"status": "confirmed",
"htmlLink": "https://www.google.com/calendar/event?eid=ZTJwZnYzbWVuMGU5cjVtdjRxcDdocnNxczggbzM4dDR0bnFpZnY0a2RhbmprbWVnczJ1cWtAZw",
"created": "2013-05-16T14:25:35.000Z",
"updated": "2013-05-16T14:25:35.577Z",
"summary": "Hello World 1",
"description": "Just testing, 2003.",
"creator": {
"email": "[email protected]"
},
"organizer": {
"email": "[email protected]",
"displayName": "ClientEventManager",
"self": true
},
"start": {
"dateTime": "2013-04-07T19:30:00Z"
},
"end": {
"dateTime": "2013-04-07T20:30:00Z"
},
"iCalUID": "[email protected]",
"sequence": 0,
"extendedProperties": {
"private": {
"foo": "bar"
}
},
"reminders": {
"useDefault": true
}
}
Ho pensato che il .01Z alla fine delle voci DateTime specificasse il fuso orario +01 (ora centrale europea), ma invece sembra che lo il server di google lo ignori e lo converta in GMT (un'ora di differenza ) senza aggiungere 1 alle ore, visualizzando l'evento come se si verificasse un'ora fuori da quando specificato. In particolare preavviso:
Richiesta:
{
"end": {
"dateTime": "2013-04-07T20:30:00.01Z"
},
"start": {
"dateTime": "2013-04-07T19:30:00.01Z"
},
Risposta:
"start": {
"dateTime": "2013-04-07T19:30:00Z"
},
"end": {
"dateTime": "2013-04-07T20:30:00Z"
},
Google ha appena compiuto il .01Z in .00Z senza chanight 19:30-20:30 alle 20:30 alle 21:30. Cosa c'è qui? Ho sbagliato la sintassi? Se è così allora come?
Grazie.
Ho lo stesso problema. L'API di Google sta ignorando il fuso orario. Sto passando "timezone": "America/Los_Angeles" e il tempo viene ancora convertito in GMT da Google. –