谷歌日历时间没有显示正确的开始和结束时间

时间:2015-09-17 19:56:11

标签: google-calendar-api

我正在构建一个链接(以编程方式)来创建Google日历链接。我发现当我以下列格式传递日期时

....&dates=20151005T170000Z/20151007T190000Z&....

我希望它显示在下午5:00到晚上7:00,而是显示在下午1:00到下午3:00

以下是完整链接:

`https://www.google.com/calendar/render?action=TEMPLATE&text=The+Annual+%20Event&dates=20151005T170000Z/20151007T190000Z&sprop=website:turnaround.org&location=Fairmont+Scottsdale+Princess+7575+East+Princess+Drive+Scottsdale,+AZ+United+States&details&website=https://example.com&pli=1&sf=true&output=xml#eventpage_6

我唯一想到的是它是一个时区问题,但我没有在网址中看到任何地方。

1 个答案:

答案 0 :(得分:4)

您正在将时区传递为Z

20151005T170000Z  <-- here at the end of the date/time
  

字母Z(“Zulu”)表示格林威治标准时间(GMT)或协调世界时(见UTC±00:00)。它们与军事时间结合使用:例如,UTC-5区域的早上6点写成“0600R”,并说“零六百罗密欧”。

https://support.google.com/calendar/answer/37064?hl=en

  

Google日历使用协调世界时(UTC)来帮助避免夏令时问题。

     

创建事件时,它们会转换为UTC,但您始终会在当地时间看到它们。

     

如果某个区域切换了他们的时区,那么在我们知道更改之前创建的事件可能位于错误的时区。

因此,请确保所有时间都是UTC时间,或者不要在时间上添加Z,而是将&amp; ctz = TIMEZONE添加到URL。