在过去,我实现了 C# 库,给定本地 DateTime 和 lat/lon,允许确定 timezone 和 offset。
我做了以下事情:
- 从 efele.net/maps/tz 下载 shapefile
- 将它们导入 SQL Server
- 用它们从纬度/经度获取 tzid
Noda Time C# 库用于获取有关时区、偏移量和 DST 的所有必要信息。它返回:
- 以分钟为单位的偏移量
- UTC 日期时间
- 奥尔森/IANA 时区名称
- Windows 时区名称
- 布尔值夏令时
现在我需要在 NodeJs + PostgreSQL 中重现这个库。建议的做法是:
- 将http://efele.net/maps/tz shapefile导入PostgreSQL
- 在 NodeJs 中使用 Moment TimeZone 库,类似于我在 C# 中使用 Noda Time 的方式
是否有已知的陷阱和困难?