我玩弄與谷歌日曆編程接口在:谷歌日曆API:TimeZone谷歌服務器沒有考慮到?
https://developers.google.com/google-apps/calendar/v3/reference/events/insert#try-it
當我執行下面的請求,我得到如下回應:
請求:
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"
}
響應:
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
}
}
我以爲01.01Z在DateTime條目的末尾會指定 的+01時區(歐洲中部時間),但它似乎 谷歌服務器只是忽略它並將其轉換爲GMT(一小時 區別),而不在小時數加1,顯示事件 在指定時間之外發生一小時。 特別聲明:
請求:
{
"end": {
"dateTime": "2013-04-07T20:30:00.01Z"
},
"start": {
"dateTime": "2013-04-07T19:30:00.01Z"
},
響應:
"start": {
"dateTime": "2013-04-07T19:30:00Z"
},
"end": {
"dateTime": "2013-04-07T20:30:00Z"
},
谷歌剛剛開啓.01Z到.00Z沒有chanight 19:30至20:30 20:30到21:30。這是怎麼回事?我的語法錯了嗎?如果是的話那怎麼樣?
謝謝。
我有同樣的問題。 Google API不考慮時區。我正在通過「時區」:「America/Los_Angeles」,時間仍然由Google轉換爲GMT。 –