标签:
最开始,想在自己的简历中实现这样一个地图效果:自动获取HR的当前位置,与我所在位置做距离差。如在相应范围之内就弹出相应对话框巴拉巴拉。初步代码写好后在浏览器里测试(mac版chrome),发现浏览器在请求http://www.googleapis.com获得经纬度。看到这个域名心就凉了一半,由于众所周知的原因,也就是说不那啥geolocation就根本获取不了地理信息。翻了一些文档,请教了一些高手,发现这个问题在桌面浏览器中可能是无解的。
在这些方法里,GPS定位最好理解,卫星直接给出定位数据。而WIFI和IP地址定位,都不是浏览器本身能够实现的。这两种方式都必须将IP地址或WIFI信号收集到的周围路由信息,上传到某个服务器,由服务器的查询计算位置信息,然后返回给浏览器。然而火狐、chrome、Opera等着主流浏览器都是用谷歌提供的API来查询,被墙的可能非常大。
最终可能的解决方案就是:PC上不要用这个API。一来查询API被墙,二来,就算没被墙,最多也只能做到通过IP地址找到你的城市。
技术上可能确实无解,但也有一些从交互的角度解决问题的思路:比如故意定位错误,给用户手动变更当前坐标的提示(通过搜索或者拖拽开始指针)。
之前在知乎的提问:https://www.zhihu.com/question/39362267
标签:
原文地址:http://www.cnblogs.com/butcherv/p/5185822.html