1

http://benwerd.com/lab/geo.php

地理定位工作正常,然后大约 2 周前它停止了。它提示我,我说允许,它说它无法获取我的位置。

我怀疑每个人都有同样的问题,但它可能是什么?我已经重新启动,这并没有做任何事情。

我有一个正在开发的移动 Web 应用程序,因此无法开发。

更新

它在其他计算机上运行良好......这只是我的开发,不适用于任何浏览器。

更新#2:

好吧...好吧,它一定与 IP/DNS 循环或其他东西有关,因为如果我 VPN 进入我的家庭网络,它可以在它无法运行的同一台本地计算机上正常工作。唯一改变的是我的IP。

因此,我工作的网络上一定发生了一些变化,不允许定位我的 IP。

仍然对可能更详细地解释可能导致这种情况的答案感兴趣。

4

2 回答 2

2

从您的两次更新中,我认为您的 ISP 可能只是更改了其 IP 范围,或者它们可能已从地理位置提供程序中删除。以下是关于地理定位在 Firefox 中如何工作的描述(其他浏览器的行为应该类似):

当您访问位置感知网站时,Firefox 会询问您是否要共享您的位置。如果您同意,Firefox 会收集有关附近无线接入点和您计算机 IP 地址的信息。然后 Firefox 将此信息发送给默认的地理定位服务提供商 Google Location Services,以获取您的位置估计。然后与请求的网站共享该位置估计。 http://www.mozilla.org/en/firefox/geolocation/

我不确定 Google 位置服务使用哪个 IP 数据库,我会假设他们有一个可用的内部数据库。对于其他提供商,您可以将您的 IP 和/或 IP 范围提交到他们的数据库。如果您的新 IP 在基础数据库中可用,则 Geolocation 应该会再次工作。

于 2012-08-30T15:03:26.197 回答
1

我知道我在最后一次输入 7 个月后添加到这篇文章,但想补充一点,我遇到了同样的问题。我的 js 包括对 navigator.geolocation.getCurrentPosition 的调用以及地理定位 api 的所有网站示例停止工作。它们在我所有的 PC 以及 FF、Opera 和 Chrome 上都失败了。在阅读了可能与 IP 相关的参考资料后,我关闭了路由器,等待了 5 分钟,然后重新启动了路由器,一切都恢复了。我不知道我的 DSL IP 是否已更新……但现在一切正常。

于 2013-03-25T04:35:23.803 回答