代码之家  ›  专栏  ›  技术社区  ›  KingFish

foursquare如何在未经许可的情况下从浏览器中确定位置

  •  1
  • KingFish  · 技术社区  · 12 年前

    how foursquare determine a user location?

    我关注的问题是foursquare如何从浏览器中确定用户位置。是的,我知道navigator.geolocation.getCurrentPosition,它可以工作,但在我实现时它需要用户的许可。我清除了浏览器在chrome和firefox中的位置权限,但他们仍然知道我在哪里。

    我的问题:他们是怎么做到的?我以为他们使用了geoip,但他们的隐私声明却另有说明。

    谢谢

    1 回复  |  直到 9 年前
        1
  •  2
  •   Adam    12 年前

    他们的 privacy policy 并没有说他们 不要 使用某种形式的地理IP位置:

    当您使用服务时,我们会自动接收您的位置。我们使用各种技术来确定位置,例如适用操作系统或浏览器的位置服务,以及来自您设备的传感器数据,例如,这些数据可能会提供附近Wi-Fi接入点和蜂窝塔的信息。

    正如你所料,它主要是为应用程序定制的,但它足够通用,不排除基于IP的位置检测。

    我认为他们正在使用IP检测。如果您访问他们的网站时没有会话或cookie,并且禁用了Javascript,那么它仍然知道您的大概位置,因此他们肯定不会使用客户端检测,至少不会完全使用客户端检测。通过代理打开网站,您将获得与您直接访问的城市不同的城市,因此可以安全地假设他们正在使用IP。