地理定位的最佳方法是什么?

时间:2009-12-09 21:14:34

标签: php geolocation

最近,地理定位技术在技术上非常流行。通过IP,手机信号塔,GPS,使用浏览器插件,HTML5 ?,移动设备......

由于我即将在我们的网站上添加一些地理定位功能,我想知道什么是最好的方法。是否有一些API使用所有这些技术的混合?或者至少,您建议我使用哪种API /服务?

我正在处理的服务不需要100%准确,所以我可以使用geo-IP,但如果有一种简单的方法可以做得更好,为什么不呢。

使用的技术是php,javascript,ajax,java。

5 个答案:

答案 0 :(得分:4)

无论你做什么,请不要根据用户的IP设置你的网站的语言,然后几乎不可能改变,除非你知道所说的语言,你想浪费时间(如ebay和paypal,其中其他人,做)。使用浏览器的语言。

不是每个人都可以说,法国会说或想说法语。

我想这与你的问题无关,但我觉得有必要对此抱怨,抱歉:)

答案 1 :(得分:1)

GEO IP可能是目前最好的方法。

HTML5看起来很有前途,但它还需要一段时间才能获得广泛支持。即使这样,它也需要明确的用户批准,这限制了使用它的可能性(例如自动重定向到特定国家版本的网站)

答案 2 :(得分:1)

首先尝试免费http://api.hostip.info?ip=x.x.x.x(网站www.hostip.info)

它会以xml结构为您提供城市和国家/地区。我在http服务器上用PHP编写了一个小代理脚本,html页面用ajax调用,并使用Google地理编码api在文本和Google地图上显示信息。稍后您可以轻松地将api.hostip.info替换为其他api。

答案 3 :(得分:0)

我会默认使用IP地址检测,然后可选择使用Javascript / HTML5 navigator.geolocation API询问更具体的位置。 (例如,在iPhone Safari中)

大多数用户仍在使用自己不知道位置的设备,因此可用的插件无法获得比IP地址检测更好的位置。 (或者,它们会提示用户手动输入数据,这很烦人)

答案 4 :(得分:0)

Max Mind很好。但是,如果您正在寻找免费解决方案,您可能需要考虑使用javascript地理编码器。最终他们会支持地址和国家,但是现在,他们只给你一个纬度和经度。