网页访客qq抓取(前端运用百度地图JavaScriptAPI的IP定位功能即可获取访客位置信息 )
优采云 发布时间: 2022-04-12 20:15网页访客qq抓取(前端运用百度地图JavaScriptAPI的IP定位功能即可获取访客位置信息
)
在网页和小程序的开发中,需要获取访问者的位置是很常见的。它不限于某些基于位置的服务应用程序。该功能可用于一般页面采集访客信息、表单填写页面获取访客信息等。在进行粗略位置获取时,可采用更简单的IP定位方案。访问者的位置信息可以通过前端百度地图JavaScript API的IP定位功能获取。本文将解释具体的实现。
开发前,首先需要在百度地图公共平台拥有开发者账号,并在控制台的创建应用部分创建服务器-浏览器应用。创建应用程序的目的是获取开发者密钥(AK),以便后续调用 JS API。
登录百度地图公共平台,进入控制台创建应用页面,可以看到应用创建栏的内容。在创建过程中,注意“JavaScript API”和“普通IP定位”的操作。配置如图 1 所示。
在应用调试过程中,可以将Referer白名单设置为*,但在实际使用过程中,为了防止自己的配额被他人恶意使用,可以将其设置为自己的站点域名。
图 1 创建应用程序
应用创建完成后点击提交按钮,可以看到我们刚刚创建的应用及其对应的AK出现在应用列表页面中,如图2所示。
图 2 应用列表
创建应用程序后,就可以开始开发工作了。由于百度地图API设计精巧,开发者的工作可以大大简化。只需要几行代码调用相应的API即可实现访客定位功能~
首先,在head标签中,介绍百度地图的JS API。
在此过程中,您还需要将上述代码区域中的“您的AK”部分替换为您在创建应用时刚刚申请的AK。
然后,您可以在body标签的相应区域编写代码来调用API,代码如下:
function myFun(result){
var cityName = result.name;
//取得用户所在城市位置后的操作
// ...
// ...
}
var myCity = new BMap.LocalCity();
myCity.get(myFun);
其中myFun为回调函数,用于获取位置结果信息。创建BMap的LocalCity类的对象,获取用户的城市位置信息(根据用户IP自动定位城市)。然后调用类中的get方法,传入回调函数,然后获取城市名。最后,用户的城市名称记录在 myFun 函数中的 cityName 变量中。此外,还可以查看市中心坐标等信息。更多说明请参见百度地图 JS API 定位开发手册。
最后,完整演示的代码:
您所在的城市为:
function myFun(result){
var cityName = result.name;
document.getElementById("city").innerHTML += cityName;
}
var myCity = new BMap.LocalCity();
myCity.get(myFun);
访问页面的结果如下: