我们都见过这样的弹出窗口:“example.com 想知道您的位置。”如果您单击“允许”,该网站通常会在几秒钟内确定您的确切位置。但如果您使用的笔记本电脑没有 GPS 芯片,它如何如此准确地知道您所在的位置呢?
HTML5 地理定位 API
现代网络浏览器使用称为 HTML5 地理定位 API 的标准。此 API 本身无法找到您的位置;相反,它充当一个信使。它要求设备的操作系统(Windows、macOS、iOS、Android)找出它所在的位置,然后将这些坐标传递回网站。
操作系统如何找到您
您的设备使用多种方法组合来确定其位置,称为定位服务。它将首先尝试最准确的方法,并在必要时回退到不太准确的方法:
- GPS:如果您在户外使用智能手机,该设备将使用其内置 GPS 芯片与卫星通信。这是最准确的方法。
- Wi-Fi 定位系统 (WPS): 如果您使用笔记本电脑,这是最常见的方法。您的计算机会扫描附近的所有 Wi-Fi 网络(甚至是您未连接的网络)。它将这些网络的名称 (SSID) 和信号强度发送到数据库(通常由 Google 或 Apple 管理)。由于这些公司已经绘制了全球数百万个 Wi-Fi 路由器的位置图,因此他们可以以令人震惊的精度对您的位置进行三角测量——通常在几米之内。
- 手机信号塔三角测量:在移动设备上,操作系统可以根据您与附近手机信号塔的距离来确定您的位置。
- IP 地址:如果所有其他方法都失败,系统将回退到使用您的 IP 地址来估计您的城市或地区。
隐私影响
由于浏览器地理位置非常准确(得益于 Wi-Fi 扫描),因此浏览器的设计绝不会在未经您明确同意的情况下共享此信息。如果您拒绝网站许可,地理定位 API 将阻止该请求,并且该网站将不得不回退到通过您的 IP 地址估计您的位置。
