我一直在Google's Timezone API上搔着头几分钟,特别是在时间戳参数上。也许这将需要:
在圣地亚哥,我们(现在,在8月)的GMT偏移量为-8,因为夏令时。 However, in November we'll have a GMT offset of -7。
那么Google应该返回哪个gmt抵消? -7或-8?它们都是有效的,但这取决于你在哪一天进行测量。
输入Timestamp参数。现在正在运行的服务,并使用timestamp value of August 2015,我得到这样的回应:
{
"dstOffset" : 3600,
"rawOffset" : -28800,
"status" : "OK",
"timeZoneId" : "America/Los_Angeles",
"timeZoneName" : "Pacific Daylight Time"
}
但是,如果我碰到了timestamp to November 2015(一旦圣地亚哥的夏令时,我结束了这一点):
{
"dstOffset" : 0,
"rawOffset" : -28800,
"status" : "OK",
"timeZoneId" : "America/Los_Angeles",
"timeZoneName" : "Pacific Standard Time"
}
在这两种情况下,rawOffset都是相同的,但由于我提供的时间戳,DST发生了更改。如果您只想知道原始时区,则时间戳不重要。
但是,如果您希望应用程序在8月份的圣地亚哥上午8:00和11月份的圣地亚哥上午8:00可靠地执行某些操作,则需要使用时间戳。
换句话说,知道圣地亚哥是的价值通常是 -7小时偏离格林威治标准时间的价值。如果您正在使用时区,则可能会尝试确保您的UTC时间与该位置的实际人员所经历的时间相匹配。因此,DST抵消是至关重要的。
Google地图时区API使用时间戳来根据位置的时区确定是否应用夏令时。 – NoName