IP位置解析

很多时候 我们需要IP地理位置解析, 比如异地登录检查:

1.2.3.4 --> 美国 华盛顿

这里我们集成ip2region这个项目, 在他仓库里面提供 关于Ip数据库文件: data/ip2region.xdb, 这里需要你们自己下载

配置组件

toml
env
[ip2region]
  # 功能开关, 开启后 需要读取DB文件, 在执行单元测试时很不方便
  enable = true
  # DB 文件路径
  db_path = "etc/ip2region.xdb"

基本使用

package main

import (
	"fmt"

	"github.com/infraboard/mcube/v2/ioc"
	"github.com/infraboard/mcube/v2/ioc/config/ip2region"
)

func main() {
	ioc.DevelopmentSetup()

	resp, err := ip2region.Get().LookupIP("117.136.38.42")
	if err != nil {
		panic(err)
	}
	fmt.Println(resp)
	// 中国|0|北京|北京市|移动
}