先说一句 精度在国内只能到城市
通常来讲, 定位主要有以下4种方法:
1. GPS
2. Wi-Fi access point
3. cell tower
4. IP address (or local router)
Google 提供了适用于移动设备的API
https://developers.google.com/maps/documentation/business/geolocation/
利用了公共的Wifi,手机信号和GPS来定位。
貌似不符合我们利用IP 地址来定位的需求。
在HTML5中,Geolocation可以返回用户所在地址。
可实际上,浏览器只是搜集相关网络信息,发送给地址服务提供商。
以火狐为例,
"By default,Firefox uses Google Location Services to determine your location by sending:
your computer’s IPaddress,
information about thenearby wireless access points"
所以就需要找到 Google Location Services的API
经过一番研究,其实就是上文提到的API。
只要传输空白的wifi 节点信息, Google API就会利用IP地址来定位。
命令很简单:
curl -d {"wifiAcce