HTML5 服务器地理位置(不是客户端位置)
Posted
技术标签:
【中文标题】HTML5 服务器地理位置(不是客户端位置)【英文标题】:HTML5 Server Geolocation (NOT client location) 【发布时间】:2014-12-26 02:11:29 【问题描述】:我使用地理定位的 html5 实现 (navigator.geolocation) 在谷歌地图上显示客户端位置,使用谷歌地图 API。这很简单。
然而,我想要的是将服务器位置也放在地图上,即“你在这里,你的服务器在这里”。我看不出如何轻松做到这一点。
我可以像 whatsmyip 这样的页面来获取坐标,但似乎这应该内置到 API 中。我只是想念它吗?
谢谢, 科林
【问题讨论】:
【参考方案1】:HTML5 地理定位 API 由浏览器实现,并使用可能包括 WiFi 信号、IP 地址或 GPS 模块的混合信息。它无法访问服务器的信息,也不关心服务器位置。
所有这些都是说 HTML5 地理定位 api 确实支持定位服务器,您需要通过其他方式提供坐标(很可能是某种形式的地理 IP 数据库)。
【讨论】:
【参考方案2】:我只是用 php 抓取的:
function ip_details($ip)
//$json = file_get_contents("http://ipinfo.io/$ip");
$json = file_get_contents("http://ipinfo.io/");
$details = json_decode($json);
return $details;
$details = ip_details("8.8.8.8");
$_SESSION['user']['serverextip'] = $details->ip;
$_SESSION['user']['serverloc'] = $details->loc;
【讨论】:
以上是关于HTML5 服务器地理位置(不是客户端位置)的主要内容,如果未能解决你的问题,请参考以下文章