平常工作中经常需要查询当前 ip 地址,开发中也需要通过 ip 获取一些位置信息,在这里记录几款可以使用的免费 api 接口。
ip-api
ip-api 是我最早找过的服务,官网可以查询当前访问的 ip 位置等信息。
接口文档为 http://ip-api.com/docs/api:json
访问非常简单
1 | $ curl http://ip-api.com/json |
1 | { |
除了 ip 信息,还有当前位置的很多信息,虽然只能获取服务器的精准经纬度,但是在很多情况下已经很有用了。这个接口唯一的不足是不支持 https,所幸有支持的。
ipapi
ipapi 跟上边基本一样,官网要漂亮点
api 文档也有更好的支持,关键是支持 https
1 | $ curl 'https://ipapi.co/json/' |
1 | { |
拿到的结果基本一致,看你的需求选择哪个吧,这两个都不需要 secret-key
即可使用,但也有限制,应该是根据 ip 来做的。
ipstack
严格意义上,该方案不是免费的,但它有一定的免费额度,每月 1 万条,一般个人使用应该也足够了,优点是获取的信息更全,微软、三星等大厂都有使用。
api 的使用需要先选择一种付费方案注册账号,根据返回的信息不同,可以选择的方案还是挺多的。
api 的调用也很简单
1 | http://api.ipstack.com/104.222.246.242?access_key={access_key} |
1 | { |
其他
另外还有一些其他推荐,但使用起来都没有这两个方便