一些WEB开发者希望在自己的网页中添加显示访问者的IP地址和地理位置的功能,例如:您的IP是:[220.181.16.0]来自:北京电信。 或者利用获取到的位置信息来定制显示一些内容,例如天气预报、当地新闻等。 那么这个时候就需要将获取到的用户IP转换成地理位置。
一种方法是从网上下载IP地址数据库,然后编写查询代码获取对应关系。 这种方式的优点是数据都是本地的,查询速度可以得到保证。 但存在一个问题,IP地址本身并没有官方的统一库,都是由各个收集者维护的。 很难保证其中的所有信息都是准确的。 而且,IP地址对应的地理位置也可能发生变化。 有可能这个IP今天还在北京,明天可能就去河北了。 这涉及到网络运营商的调整。 如果是IP地址数据库,一定不能及时更新,这样会导致信息出现偏差。
更合适的方式是通过调用互联网上的IP地理位置查询接口来完成这个功能。 有许多提供收费的在线接口服务。 收费接口的好处是数据准确度会比较高,并且数据会定期维护和更新,可以返回除地理位置之外的更详细的信息。 然而,充电接口的申请流程一般较为复杂。 需要创建一个账户来申请密钥,然后根据使用频率缴纳费用。 那么有没有一种既好用又免费的界面呢? 当时的答案是肯定的,下面为您推荐两个免费的IP查询地理位置接口。
淘宝的免费界面
调用方式:{ip地址}
例如:
返回的格式为json格式,内容如下:
新浪的免费界面
调用方式:{ip地址}
例如:
返回的格式为json格式,内容如下:
剩下的就是读取json格式的数据并显示出来,是不是很简单。 而且淘宝和新浪一定要有定期维护ip数据的机制,基本上数据都是比较准确的。 如果没有特殊要求,这两个免费接口足够使用。 但毕竟是免费的,并不能保证这两个接口在以后一直有效,所以用起来要珍惜。