近来遇到一个需求,就是地图的展示,由于是国际业务,然后做所周知,谷歌的ip在国内被墙了,所以在国内用谷歌地图是行不通了(科学上网除外),而如果只用百度高德之内的地图的话,显示国外部分又会存在显示信息不准确,不及时的问题,所以除了科学上网之外,最好的办法就是在国外使用google地图,在国内使用百度、高德或者腾讯地图。
想法是好的,但是怎么判断是国内还是国外呢?定位?ip?连用什么地图都还没有定下来,要定位有啥用?那么只能通过ip了,查阅一番下来,最多的办法就是前端获取到ip之后传入后台,由后台来根据ip对照表筛选判断,但是由于项目是一个纯前端的项目,跟后台没啥交互,找后台过来单独提供一个接口劳民伤财不是,还好,最后找到一个淘宝的接口:
http://ip.taobao.com/service/getIpInfo.php?ip=***.***.***.***
把后面的...换成当前的ip地址,得到如下的数据结构:
image.png
那么,怎么判断是国内国外一目了然了吧?(同时默默的也留下了一个坑:跨域,所以有条件的同学,还是在自己的服务器部署api吧)。









网友评论