调用Google Maps TimeZone API时本地生成时间戳是否影响其他地区UTC偏移与时区
问题背景
我正在使用Google Maps TimeZone API获取纽约、伦敦、巴黎、悉尼等地坐标(经纬度)对应的时区和UTC偏移量。
示例请求:https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810%2C-119.6822510×tamp=1331161200&key=YOUR_API_KEY
核心问题
若我在旧金山本地生成时间戳,调用接口查询纽约、伦敦、悉尼等其他地区经纬度对应的信息时,该本地生成的时间戳是否会改变接口返回的目标地区UTC偏移量或时区结果?
官方文档相关说明
timestamp参数说明:
所需查询的时间,格式为1970年1月1日UTC零点以来的秒数。Time Zone API会基于查询坐标所属的时区,使用该timestamp判断是否需要应用夏令时。请注意该接口不会考虑历史时区规则:如果传入的是过去的时间戳,接口不会考虑该坐标所属地区当时可能采用不同时区规则的情况。
解答
- 首先不需要担心生成时间戳的地点会带来额外影响:接口要求的Unix时间戳本身是时区无关的,同一时刻无论你在全球哪个地点生成的标准Unix时间戳数值完全一致,不存在“旧金山本地时间戳”和其他地区时间戳的差异,只要你生成的是符合要求的1970年1月1日UTC零点到对应时间的秒数,就可以正常使用。
- 对返回结果的影响可以分为两类:
- 目标地区的时区本身(比如时区ID、时区名称)不会随timestamp变化,固定和你传入的经纬度绑定。
- 返回的UTC偏移量可能会随timestamp变化,但变化原因只和该时间点下目标地区是否启用夏令时有关,和你生成时间戳的地点完全无关。比如你传入的timestamp对应夏季时段,纽约的UTC偏移为UTC-4,对应冬季时段则为UTC-5,这是纽约当地的时区规则决定的,和你在旧金山生成时间戳的行为没有任何关联。
内容的提问来源于stack exchange,提问作者chuckd
相关产品推荐
相关产品推荐

