http get / post请求和google geolocation api

时间:2009-04-13 20:16:52

标签: http geolocation google-gears

我正在使用http://m.rummble.com网站上的网络应用程序,当我点击使用齿轮查找我的位置时。该应用程序返回我在当前半径范围内的各种场所的当前位置(大致的城市位置)。为了进一步了解其工作原理,我打开了wireshark,我注意到POST请求已发送到www.google.com/loc/json。然后,谷歌服务器以200 OK和JSON格式的位置数据进行响应。我理解这一部分。下一步是我不明白的。显然,在朗姆酒应用程序接收到位置数据(纬度,长度,地址等)之后,它使用GET请求将该信息发送到另一个服务器上的api,该服务器获取给定英里半径内的各种机构。我所做的只是点击,使用齿轮找到我的位置。我会合理地期望应用程序只返回我的位置,但它返回的不仅仅是没有单击应用程序中的任何其他按钮。有谁可以解释这是怎么发生的?有没有一个脚本可以实现这一目标?我希望我能更好地解释我的情况   alt text http://img211.imageshack.us/img211/1236/examplel.jpg

2 个答案:

答案 0 :(得分:0)

确定匿名用户位置的第一步是他的IP。如果这就是你想要的,你需要做两件事之一:

  1. 查找IP和位置数据库。出现了快速Google搜索http://ip-to-country.webhosting.info/downloads/ip-to-country.csv.zip
  2. 使用DNS跟踪路由并反向查找IP到主机名,并尝试读取地理信息的主机名,例如国家和城市。
  3. 无论哪种方式,只要您拥有国家/地区和/或城市,就可以进行查找地理查找以查找纬度和经度,并根据这些坐标显示地图。

    据推测,Google Gears使用类似的东西,或者可能基于Google使用各种数据收集技术收集的数据。这样,一旦Google Gears确定了用户所在的位置,就会知道他所在的城市/国家/地区,并请求匹配的纬度和经度。

答案 1 :(得分:0)

无论出于何种原因,rummble.com都没有在我的机器上查询navigator.getlocation,因此我无法自行确认您的报告。

但是,当您点击允许rummble.com从Gears获取您的位置时,您将该位置信息移交给rummble.com网站。然后该网站可以随意使用它 - 信息将返回到浏览器上运行的一段Javascript,在这种情况下,听起来就像是那条Javascript正在使用您的位置信息来加载附近的列表餐厅。

你可能会非常担心这一点。如果谣言将您的姓名和位置信息发送给广告商或政府,该怎么办?他们存储您的精确位置信息多久了?您应该在允许与网站共享您的位置之前考虑这些影响