最近,地理定位技术在技术上非常流行。通过IP,手机信号塔,GPS,使用浏览器插件,HTML5 ?,移动设备......
由于我即将在我们的网站上添加一些地理定位功能,我想知道什么是最好的方法。是否有一些API使用所有这些技术的混合?或者至少,您建议我使用哪种API /服务?
我正在处理的服务不需要100%准确,所以我可以使用geo-IP,但如果有一种简单的方法可以做得更好,为什么不呢。
使用的技术是php,javascript,ajax,java。
答案 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地理编码器。最终他们会支持地址和国家,但是现在,他们只给你一个纬度和经度。