我的用户可能位于世界上的任何地方,他们将看到一个文本框,他们可以在其中输入自己的地址。在大多数情况下,我假设他们实际在同一个国家,无论他们输入的是什么地址。
我想通过做region biasing来帮助Google Map API做出更好的猜测。有没有一种方法可以告诉谷歌从哪里发出请求的地区偏见?或者,当我进行web服务调用(例如,将IP地址转换为国家/地区信息)时,如何将该信息提供给Google?
谢谢。
发布于 2010-10-31 08:39:55
上次我检查的时候,客户端和服务器端Google地理编码器的“区域偏差”都是不可靠的。查看去年4月的这篇文章(现在再次测试,问题仍然存在):
我发现的最可靠的方法是在地址的末尾附加国家。因此,如果用户位于英国,并且键入“牛津大街伦敦",则需要将”,UK“附加到地址以进行地理编码。
要获得用户的国家/地区,有相当多的解决方案。您可以使用地理定位应用编程接口as @You suggested in the other answer,也可以使用第三方IP- to -location服务。你可能想看看MaxMind GeoLite City服务,它是免费的,据报道在国家/地区的准确率为99.5%。
发布于 2010-10-31 08:33:05
在现代浏览器中,您可以使用Dive Into HTML5中描述的HTML5地理定位API。这假设客户端支持,并且您是在客户端发出请求。对于服务器端(或备用)解决方案,您可以尝试PHP Geo IP functions之类的解决方案。
https://stackoverflow.com/questions/4061301
复制相似问题