有没有人知道将时区字符串转换为相应的GMT偏移的网络服务?
意思是我喜欢发送这样的HTTP请求:
http://servcer.com/getgmtoffset?timezone=Europe/Zurich
并返回“+1”。
为何选择外部服务?
我正在写一个google apps script,其中API没有这样的转化选项,当国家/地区决定使用不同的夏令时参数时,我不想自己更新转化表。
答案 0 :(得分:2)
我看到你已经有了一个解决方案,但我想指出,如果没有该时区内的特定日期,时区偏移是没有意义的。该偏移量将在全年的许多时区中发生变化,以解决夏令时问题。
您似乎只需要知道进行API调用的特定时间的偏移量。如果您在任意日期需要它,您需要将日期和时区传递给API以获得正确的偏移量。
这里有一些很棒的时区地理编码API,您可能会发现它们非常有用: Timezone lookup from latitude longitude
答案 1 :(得分:1)
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响应......