2011-04-01 41 views
15

因此,我希望能够在登录到我的网站的主页时查找用户的位置(即使仅限于城市/城镇级别)。我想这不是不可能的,因为Google似乎在登录主页时会这样做,它似乎会将搜索结果转向您所在的区域等。如何在网站访问期间查找用户的位置?

我能看到什么能够做到这一点?

回答

12

您可以使用GeoIP位置服务,他们有不同级别的准确性。也可能有其他IP位置数据库提供商。

另一种选择是尝试使用HTML5位置服务,如http://html5demos.com/geohttp://dev.w3.org/geo/api/spec-source.html

+0

+1使用HTML5。令人惊叹 – slandau 2011-04-01 14:53:40

+0

我会推荐保罗的答案,但这是你的电话,我想。当互联网上的一半人不支持HTML5时,依靠HTML5是很冒险的。 – jhocking 2011-04-01 15:20:14

8

您需要使用IP地理位置/协同定位API,例如this one等等。 This one拥有免费服务,只需注册。

您还可以使用地理位置代码信息下载数据库。这将工作到一定的分辨率,但数据库代表一个静态快照和现实可能会随着时间的推移显着。 Here is a freely available CSV文件,可以让你开始在本地数据库的一面。 CSV文件(有点旧,最近一次更新为2009年8月)包含59,000个条目。

1

您可以a)使用在线服务查找位置 - 许多都有api,或b)您可以下载的网络中有大量的数据库。根据您需要的分辨率,您可能需要付费。但是国家的决议当然是免费的。尝试使用谷歌搜索“地理IP”或类似的。

0

如果您不关心超精确的精度,并且您不想让用户警惕请求他们访问他们的位置的权限,那么您可以使用类似FreeGeoIP的东西。我写了一个使用这个的小jQuery插件。请参阅Locaternator。也支持jsonp请求,因此您可以从任何网站使用它,包括仅用于静态html的网站。

相关问题