香港专业教育学院注意到,基于现代HTML5地理位置总是询问用户“你想与本网站分享你的位置?”。 这是很好的,但我知道有试图确定一个大概的地理位置,而不必要求该权限等航线。 如果我还记得,这些服务使用IP数据库,试图追踪geolocaiton信息并将其提供给一个web应用程序。
所以,在我的网站,我想获得一个“最佳猜测”在用户的邮政编码,没有被请求的地理位置权限。 什么是这样做的最简单的和/或最好的方法是什么?
香港专业教育学院注意到,基于现代HTML5地理位置总是询问用户“你想与本网站分享你的位置?”。 这是很好的,但我知道有试图确定一个大概的地理位置,而不必要求该权限等航线。 如果我还记得,这些服务使用IP数据库,试图追踪geolocaiton信息并将其提供给一个web应用程序。
所以,在我的网站,我想获得一个“最佳猜测”在用户的邮政编码,没有被请求的地理位置权限。 什么是这样做的最简单的和/或最好的方法是什么?
IP地理定位不太准确,但你并不需要的用户权限了。 该http://ipinfo.io API(这是我的服务),使得它非常简单。 这里有一个jQuery的例子:
$.get("http://ipinfo.io", function(response) {
console.log(response.city, response.region, response.country);
}, "jsonp");
更多详细信息,请点击这里 。
使用在后端使用IP位置脚本_SERVER
变量。 这是未经许可的唯一途径,但与巨大的缺点:1)它是不是在所有2)IP地址准确,如果他们使用代理可以由用户来改变
但尽管如此,它如果你不想问权限的唯一途径。
或者你可以只问用户他们的邮政编码,因为他们想使用你的网站,他们还不如:)
另外,看看这篇文章: 无提示地理位置
随着https://ipdata.co API
$.get("https://api.ipdata.co", function (response) { $("#response").html(JSON.stringify(response, null, 4)); }, "jsonp");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <pre id="response"></pre>