package controller import ( "github.com/gin-gonic/gin" "net" "service/bizcommon/util" "strings" "time" ) func Healthcheck(ctx *gin.Context) { data := map[string]interface{}{ "time": time.Now().Unix(), "time_str": util.GetTodayZeroTime().Format(time.RFC3339), } ReplyOk(ctx, data) } func TestIp(ctx *gin.Context) { ReplyOk(ctx, getIp()) } func getIp() string { addrs, err := net.InterfaceAddrs() if err != nil { return "127.0.0.1" } retIp := "" for _, address := range addrs { // 检查ip地址判断是否回环地址 if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() { if ipnet.IP.To4() != nil { ip := ipnet.IP.String() if strings.HasPrefix(ip, "172.") { retIp = ip break } } } } return retIp }