geoip2-golang 获取城市 code
时间: 2023-08-03 21:04:29 浏览: 313
根据ip地址获取城市
5星 · 资源好评率100%
要使用geoip2-golang获取城市代码,你需要先下载并安装MaxMind GeoIP2 City数据库。你可以从MaxMind网站上获取它。一旦你安装了这个数据库,你可以使用下面的代码来获取一个IP地址的城市代码:
```
package main
import (
"fmt"
"github.com/oschwald/geoip2-golang"
"net"
)
func main() {
db, err := geoip2.Open("path/to/GeoIP2-City.mmdb")
if err != nil {
fmt.Println(err)
return
}
defer db.Close()
ip := net.ParseIP("128.101.101.101")
record, err := db.City(ip)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("City Code: %v\n", record.City.GeoNameID)
}
```
在这个例子中,我们打开了一个名为"GeoIP2-City.mmdb"的数据库文件,并使用`db.City()`函数来获取IP地址的城市信息。我们从返回的`record`结构体中获取了城市代码,并使用`fmt.Printf()`函数将其打印出来。请注意,在实际使用时,你需要替换`128.101.101.101`为你要查询的IP地址。
阅读全文