地理定位的最佳方法是啥?
Posted
技术标签:
【中文标题】地理定位的最佳方法是啥?【英文标题】:What is the best approach to geo targeting?地理定位的最佳方法是什么? 【发布时间】:2009-12-09 21:14:34 【问题描述】:最近,地理定位在技术领域非常流行。通过 IP、信号塔、GPS、使用浏览器插件、html5?、移动设备...
由于我即将在我们的网站上添加一些地理定位功能,我想知道什么是最好的方法。是否有一些 API 混合使用了所有这些技术?或者至少,你会推荐我使用什么 API/服务?
我正在开发的服务不需要 100% 准确,所以我可以使用 geo-IP,但如果有一种简单的方法可以做得更好,那何乐而不为。
使用的技术有 php、javascript、ajax、java。
【问题讨论】:
【参考方案1】:无论您做什么,请不要根据用户的 IP 设置您网站的语言,然后几乎不可能更改,除非您知道所说的语言并且您觉得浪费时间(例如 ebay 和 paypal,其中其他人,做)。使用浏览器的语言。
比方说,在法国,并不是每个人都会说或想要说法语。
我想这与你的问题不太相关,但我觉得有必要对此大发雷霆,抱歉:)
【讨论】:
确实无关,但还是谢谢。是的,我知道当我旅行并不断使用错误的语言时,我也觉得很烦人。【参考方案2】:GEO IP 可能是目前最好的方法。
HTML5 看起来很有前途,但要得到广泛支持还需要一段时间。即便如此,它也需要明确的用户批准,这限制了使用它的可能性(例如自动重定向到特定国家/地区的网站版本)
【讨论】:
【参考方案3】:首先尝试免费的http://api.hostip.info?ip=x.x.x.x(网站为www.hostip.info)
它将以 xml 结构为您提供城市和国家/地区。我在 http 服务器上用 PHP 编写了一个小型代理脚本,一个 html 页面使用 ajax 调用它,并使用 Google 地理编码 API 在文本和 Google 地图上显示信息。稍后您可以轻松地将 api.hostip.info 替换为其他 api。
【讨论】:
为澄清起见,我将其用于注册脚本,在该脚本中向用户建议地理位置,他们可以通过输入地点或在谷歌地图上选择来更改。然后存储纬度和经度。 我刚刚尝试使用我当前的 IP。 “地点:……其实我们一点头绪都没有。”是我运气不好还是他们的数据库太小了? 它是基于社区的,所以准确度可能不会那么高。我的用户可以输入他们的位置,所以我不知道服务失败的频率。您可以查看一些商业地理数据库。 我决定使用 www.GeoPlugin.com 。听说过吗? 不,但我刚刚检查了一下,它似乎在返回数据中提供了更多像 lat lon 的信息。它还提供不同的网络服务。【参考方案4】:默认情况下我会使用 IP 地址检测,然后可以选择使用 Javascript/HTML5 navigator.geolocation
API(如果存在)请求更具体的位置。 (例如,在 iPhone Safari 中)
大多数用户仍在使用自己不知道位置的设备,因此可用的插件无论如何都不会比 IP 地址检测获得更好的位置。 (或者,他们会提示用户手动输入数据,这很烦人)
【讨论】:
【参考方案5】:Max Mind 很好。但如果您正在寻找免费的解决方案,您可能需要考虑使用 javascript 地理编码器。最终他们会支持地址和国家,但现在,他们只给你一个纬度和经度。
【讨论】:
以上是关于地理定位的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章