事件通过api在Google日历中显示错误的时间

时间:2017-09-14 11:01:50

标签: timezone google-calendar-api

我创建了一个活动并且还通过了EST时区。但在我的Google日历中,它会在3小时后显示为时间偏移。

例如,我将值传递为

"start": {
    "dateTime": "2017-10-27T15:00:00-04:00",
    "timeZone": "EST"
},
"end": {
    "dateTime": "2017-10-27T19:00:00-04:00",
    "timeZone": "EST"
}

但是日历中显示的值是:

"start": {
    "dateTime": "2017-10-27T18:00:00-04:00",
    "timeZone": "EST"
},
"end": {
    "dateTime": "2017-10-27T22:00:00-04:00",
    "timeZone": "EST"
}

这是一个严重的问题。任何人都可以帮助我,谢谢你。

1 个答案:

答案 0 :(得分:0)

一些事情:

  • 不要通过EST。使用tz identifier的完整Area/Locality格式。

    • 虽然EST是有效的标识符,但它固定为UTC-5。它实际上只适用于某些向后兼容性场景。
    • 您提供的日期是夏令时,是UTC-4。
    • 假设您的意思是美国东部时区,则应将America/New_York作为时区ID。
  • 即使考虑到上述情况,您的输出实际上也不应如上所示。