初识 Geolocation API 获取用户的物理地址 - 文章教程

初识 Geolocation API 获取用户的物理地址

发布于 2019-05-22 字数 2249 浏览 1442 评论 0

Geolocation API 现在几乎可以在所有的浏览器上运行,但是需要用户的授权,在 Web 开发中,有一个有趣的功能,那就是用户的物理位置定位,你的用户在哪里浏览你的网站,您可以根据用户的物理位置和根据用户的语言环境,在该数据或显示特定产品。

让我们看看如何使用 GeolocationAPI 获取位置信息。

检测浏览器的地理定位功能

特征检测是确定 Geolocation API 是否被支持的最好方式。

if("geolocation" in navigator) {
    //w00t!
}else {
    alert("对不起,你的浏览器不支持 GeolocationAPI");
}

上面的代码关键是在你的浏览器中检测 navigator.geolocation 对象,使用 in 而不是简单的使用 if(navigator.geolocation) 是非常重要的,检查可以初始化地理定位和占用设备资源。

对于地理位置信息查询

navigator.geolocation.getCurrentPosition 函数是检索位置信息后的重要方法。

if("geolocation" in navigator) {
    navigator.geolocation.getCurrentPosition(function(position) {
        console.log(position);
    });
}

一旦你调用这个方法(提供它的功能,如果你的请求是成功的),浏览器会询问用户,如果他们将允许你检索他们的位置信息:

初识 Geolocation API 获取用户的物理地址

当用户允许网站获取位置信息,浏览器获取信息,为您提供一个有效位置对象,看起来位置对象:

// "Position" object
{
    coords: { "Coordinates" object
        accuracy: 65,
        altitude: 294.4074401855469,
        altitudeAccuracy: 10,
        heading: -1,
        latitude: 43.01256284360166,
        longitude: -89.44531987692744,
        speed: -1
    },
    timestamp: 1429722992094269
}

如果你想要更多的信息,如国家、城市等等,你可以使用三维定位服务。

点击这里查看实例:Geolocation API 示例页面

总结

这个接口是许多移动应用程序的基础,真正的应该是在任何网络开发者的工具箱里。最好的是所有的浏览器都支持地理定位 API。

详细文档请参阅:第四章 Geolocation API

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

2891 文章
评论
84935 人气
更多

推荐作者

勿忘心安

文章 0 评论

ekko

文章 0 评论

江挽川

文章 0 评论

献世佛

文章 0 评论

Meets

文章 0 评论