如果用户使用通过以太网连接的桌面PC并使用谷歌帐户登录(在chrome中),他将在maps.google.com上看到他们的设备位置(针对同一帐户),但如果我通过JS请求位置(navigator.geolocation .getCurrentPosition ...)它将显示不同的位置(我想它将是互联网提供商的位置)。如何使用谷歌地图获得精确的位置?
答案 0 :(得分:0)
是的,Google Maps Geolocation API根据移动客户端可以检测到的有关手机信号塔和WiFi节点的信息返回位置和准确度半径。本文档描述了用于将此数据发送到服务器并将响应返回给客户端的协议。
使用POST通过HTTPS完成通信。请求和响应都被格式化为JSON,两者的内容类型都是application / json。
HTTP请求:
https://www.googleapis.com/geolocation/v1/geolocate?key=YOUR_API_KEY
成功的地理定位请求将返回定义位置和半径的JSON格式的响应。
{“location”:{“lat”:51.0,“lng”: - 0.1},“准确度”:1200.4}
如果您的地理定位响应在准确性字段中显示非常高的值,则该服务可能会根据请求IP而不是WiFi点或手机信号塔进行地理定位。如果没有手机信号塔或接入点有效或被识别,就会发生这种情况。