2013-05-16 5 views
5

私がGoogleカレンダーのプログラムインターフェイスで遊んでいます:GoogleカレンダーAPI:TimeZoneはGoogleサーバーで考慮されていませんか?

要求::

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

応答:私は、私は次のような応答を取得するには、次のリクエストを実行すると

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

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

DateTimeエントリの末尾にある.01Zは、+01タイムゾーン(ヨーロッパ中部標準時)の を指定すると思われますが、代わりに Googleサーバーがそれを無視してGMTに変換します(1時間 差)を1時間追加することなく、指定された時間の外にイベント を表示します。

要求::

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

応答:Googleはちょうどchanight 19:30なし.00Zに.01Zを回し

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

20時30 と20時30分に特定の通知に 〜21:30。ここに何がありますか?構文が間違っていますか?もしそうなら、どのように?

ありがとうございました。

+1

私は同じ問題を抱えています。 Google APIはタイムゾーンを無視しています。私は "タイムゾーン": "America/Los_Angeles"を渡していますが、その時はまだGoogleによってGMTに変換されています。 –

答えて

0

APIは 'timeZone'パラメータを受け入れます。 'GMT + 1:00'や 'UTC + 1:00'などのタイムゾーン値を渡してみてください。

私たちのチームでも同様の問題がありました。私たちは以前のような問題を抱えていました。

+0

私はそれをやっていますが、 "GMT + 1:00"、 "GMT + 1"、 "GMT"から "Europe/London"にタイムゾーンを設定した場合でも返されるイベントは同じです。それをまったく設定しないでください。それらはすべて米国西海岸の時間であり、何らかの理由でカレンダーのタイムゾーンです。その入力パラメータの目的が見当たりませんか、それとも無視されていますか? – Dimitris

+1

.01Zまたは.00Zを削除しようとしましたか?それはしばらくしていますが、私が物事を正しく思い出すと、Zはズールー時間または一般的にGMTとして知られていることを示します。それはおそらくあなたがまだGMT結果を得ている理由です。 – iamthearvin

+0

ありがとうございます。しかし、 "Z"を削除するか、 ".00Z"や ".06Z"などの類似物を追加すると、同じ結果が得られます... – Dimitris

関連する問題