2013-05-16 29 views
5

Ben de google takvim programlı arayüzü ile etrafında oynuyorum:Google Calendar API: TimeZone google server tarafından dikkate alınmıyor mu?

https://developers.google.com/google-apps/calendar/v3/reference/events/insert#try-it

Ben şu yanıtı almak aşağıdaki isteği yürütmek olduğunda:

İstek:

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" 
} 

Yanıtı:

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 
} 
} 
.210

Ben 01 saat dilimi (Orta Avrupa Saati) belirtmek istiyorum DateTime girişlerinin sonunda .01Z düşündüm, ama bunun yerine google sunucusu sadece sayar ve (GMT bir saat farkı dönüştürür görünüyor) saat 1'e eklemeden, olayını, belirtildiği zamanın bir saat dışında gerçekleşecek şekilde görüntülemek.

İstek::

{ 
"end": { 
"dateTime": "2013-04-07T20:30:00.01Z" 
}, 
"start": { 
"dateTime": "2013-04-07T19:30:00.01Z" 
}, 

Yanıt: Google sadece chanight 19:30 olmadan .00Z içine .01Z döndü

"start": { 
"dateTime": "2013-04-07T19:30:00Z" 
}, 
"end": { 
"dateTime": "2013-04-07T20:30:00Z" 
}, 

20:30 ve 20:30 Özellikle bildirimde 21:30 Ne var ne yok Sözdizimi yanlış mı anladım? Öyleyse nasıl olacak?

Teşekkürler.

+1

Aynı sorunu yaşıyorum. Google API, saat dilimini dikkate almıyor. "Zaman dilimi" geçiyorum: "Amerika/Los_Angeles" ve zaman hala Google tarafından GMT'ye dönüştürülüyor. –

cevap

0

API, 'timeZone' parametresini kabul eder. 'GMT + 1: 00' veya 'UTC + 1: 00' gibi bir saat dilimi değerini geçmeyi deneyebilirsiniz.

Daha önce ekibimizde benzer bir sorun yaşadık ve sadece doğru şeyler almak için değerlerle uğraştık.

+0

Bunu yapıyorum ama saat dilimini "GMT + 1: 00", "GMT + 1" e, "GMT" ye "Avrupa/Londra" ya da "eğer yapmasam bile" Bunu hiç ayarlamayın. Bunların hepsi ABD Batı Kıyısı zamanıdır, bu da bir sebepten takvimin saat dilimi. Bu girdi parametresinin amacını kaçırıyor muyum yoksa göz ardı ediliyor mu? – Dimitris

+1

.01Z veya .00Z'yi kaldırmayı denediniz mi? Bir süredir devam ediyor, ama eğer işleri doğru hatırlıyorsam, Z Zulu Time'ı veya yaygın olarak GMT olarak bilinen şeyi gösterir. Muhtemelen hala GMT sonuçları alıyorsunuzdur. – iamthearvin

+0

Bunun için teşekkürler. Ancak "Z" 'yi kaldırmak ya da ".00Z" veya ".06Z" ya da benzer şeyler eklemek aynı sonuçları vermiştir ... – Dimitris