Web服务将时区名称转换为GMT偏移量

时间:2010-12-15 16:38:40

标签: javascript timezone google-apps-script

有没有人知道将时区字符串转换为相应的GMT偏移的网络服务?

意思是我喜欢发送这样的HTTP请求:

http://servcer.com/getgmtoffset?timezone=Europe/Zurich

并返回“+1”。

为何选择外部服务?

我正在写一个google apps script,其中API没有这样的转化选项,当国家/地区决定使用不同的夏令时参数时,我不想自己更新转化表。

3 个答案:

答案 0 :(得分:2)

我看到你已经有了一个解决方案,但我想指出,如果没有该时区内的特定日期,时区偏移是没有意义的。该偏移量将在全年的许多时区中发生变化,以解决夏令时问题。

您似乎只需要知道进行API调用的特定时间的偏移量。如果您在任意日期需要它,您需要将日期和时区传递给API以获得正确的偏移量。

这里有一些很棒的时区地理编码API,您可能会发现它们非常有用: Timezone lookup from latitude longitude

答案 1 :(得分:1)

我在this answer

中找到了一些东西
http://json-time.appspot.com/time.json?tz=Europe/Zurich

{
  "tz": "Europe\/Zurich", 
  "hour": 9, 
  "datetime": "Thu, 16 Dec 2010 09:29:16 +0100", 
  "second": 16, 
  "error": false, 
  "minute": 29
}

答案 2 :(得分:0)

我不认为有这样的网络服务。 可能是因为各国很少(从不?)改变夏令时政策。

我不知道你可以在谷歌应用程序脚本中做什么,但如果你有权访问Java库,你可以使用TimeZone.getOffset(long)方法。

你也可以尝试this,但它可能是黑客攻击,因为你可能需要解析html响应......