确定纬度/经度时区从没有像geonames.org使用Web服务

阅读时长 3 分钟读完

在前端应用程序中,有时需要根据给定的纬度和经度确定时区。虽然有许多开源库可以帮助完成这项工作,但是我们也可以利用Geonames API来获取所需的信息。Geonames是一个免费的地理位置数据库,提供了许多有用的功能,如查找地址、城市和时区等。

获取时区信息

要获取给定纬度和经度的时区信息,我们可以使用以下API调用:

其中,{latitude}{longitude}分别指定纬度和经度,而{username}则是您在Geonames注册时获得的用户名。该API将返回包含时区信息的JSON响应。

下面是一个示例代码,演示如何使用fetch API从Geonames API获取时区信息:

在上面的代码中,我们定义了latlng变量,并将它们传递给API调用。然后,我们使用fetch API从API获取响应,并将其解析为JSON对象。最后,我们打印出返回的数据或处理错误。

解析时区信息

一旦我们获得了包含时区信息的JSON响应,我们就可以解析它以获得所需的信息。以下是一个示例代码,演示如何解析从Geonames API返回的时区JSON响应:

-- -------------------- ---- -------
----- --- - -------- -- --
----- --- - ---------- -- --
----- -------- - ----------------

----------------------------------------------------------------------------------------
  -------------- -- ----------------
  ---------- -- -
    ----- ---------- - ----------------
    ----- ------------ - ------------------
    ----------------- ---- --- ----------------
    ----------------- ---- ----- ------------------
  --
  ------------ -- ----------------------

在上面的代码中,我们首先从API响应中提取timezoneIdtimezoneName值,然后将它们打印到控制台上。

总结

本文介绍了如何使用Geonames API从纬度和经度获取时区信息。我们还演示了如何使用fetch API获取API响应并解析它以获得所需的信息。通过使用这些技术,我们可以轻松地确定某个地理位置的时区,以便在前端应用程序中使用。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/15324

纠错
反馈