目前情况是,在go语言的环境下使用域名而非ip的方式进行连接时,sdk会自动将域名转换成localhost,其中的代码块为
host, port, err := net.SplitHostPort(host)
// net.ParseIP(host)中host如果是域名,则会被修改为localhost
if err != nil || net.ParseIP(host) == nil {
c.host = hostDef
} else {
c.host = host
}
tmpPort, err := strconv.Atoi(port)
if err != nil {
c.port = portDef
} else {
c.port = int32(tmpPort)
}
请问是否有其他办法进行解决,还是说只能通过ip的方式进行连接
net包里,解析IP和解析域名的函数不是一个,解析IP是用net.ParseIP函数,解析域名是用net.ResolveIPAddr函数,如下代码。
运行的结果是
