Golang QQWry,高性能纯真IP查询库。
- 仅支持ipv4查询。
package main
import (
"fmt"
"github.com/xiaoqidun/qqwry"
)
func main() {
// 从文件加载IP数据库
if err := qqwry.LoadFile("qqwry.dat"); err != nil {
panic(err)
}
// 从内存或缓存查询IP
location, err := qqwry.QueryIP("119.29.29.29")
if err != nil {
fmt.Printf("错误:%v\n", err)
return
}
fmt.Printf("国家:%s,省份:%s,城市:%s,区县:%s,运营商:%s\n",
location.Country,
location.Province,
location.City,
location.District,
location.ISP,
)
}
- 下载IP数据库并放置于assets目录中。
- client和server需要go1.16的内嵌资源特性。
- 作为库使用,请直接引包,并不需要go1.16+才能编译。
- 自行根据需要调整server下源码。
- 可以通过-listen参数指定http服务地址。
- json api:curl http://127.0.0.1/ip/119.29.29.29
使用本类库你唯一需要做的就是把LICENSE文件往你用到的项目中拷贝一份。