2017-05-20 44 views
0

一個谷歌日曆時間,我有以下鏈接,用戶創建一個谷歌日曆事件鏈接創建不排隊與實際時間

https://calendar.google.com/calendar/render?action=TEMPLATE&text=Your+Event+Name&dates=20140127T224000Z/20140320T221500Z&ctz=America/Los_Angeles&details=For+details,+link+here:+http://www.example.com&location=Waldorf+Astoria,+301+Park+Ave+,+New+York,+NY+10022&sf=true&output=xml#eventpage_6

我最初發現了這一點,使用例如從Link to add to google calendar

我遇到的問題是與URL的一部分時間是

&dates=20140127T224000Z/20140320T221500Z 

佈雷亞做k該設計下來這在谷歌用來確定開始/結束的日期和時間格式爲

Ymd\\THi00\\Z 

所以,你明白谷歌使用GMT作爲URL的標準時間,並將其轉換準確地根據用戶的設置在他們的Google帳戶中。例如(GMT-07:00) Pacific Time

因此,讓眼前這個網址是

224000 which is Hi00 or Hour:Minutes:Seconds 

在我的谷歌日曆的開始時間,我的時區設置被設置爲太平洋這是-7。轉換224000格林尼治標準時間-7 Pacific154000這應該是3:40 PM

問題是,當你點擊鏈接,(如果你是太平洋)是示我的開始時間爲2:40 PM

什麼甚至離奇的是結束時間這是221500顯示爲3:15 PM。結束時間小時仍與開始時間相同,但顯示提前1小時。我得知Google可能假設我的意思是我提前1小時爲我做出更改,或者默認Google可能會自動從開始時間增加1小時。

我不確定我是否理解Google在網址中使用GMT的格式,或者存在與我的編碼有關的問題以及我如何表示該格式。任何人有關於此的任何信息?

回答

1

您可能需要檢查此page,其中討論了Google日曆如何使用時區。如上所述,

當你創建一個事件時,你會在你的本地時區看到它。即使他們在不同的時區,它也會在當地時區顯示給您邀請的任何人。

而且,在夏令時:

谷歌日曆使用Coordinated Universal Time (UTC),以幫助避免日光節約時間的問題。

創建事件時,它們轉換爲UTC,但您將始終在當地時間看到它們。

如果某個區域切換其時區,則在我們瞭解此更改之前創建的事件可能位於錯誤的時區。

有了這個,你可能想試試在thread給出的解決方法,看看它是否會幫助你。