Browse Source

合并输出多个ip地址信息

master
xyiege 4 months ago
parent
commit
6ad7a13d58
  1. 27
      aufs/core/hdinfo.go

27
aufs/core/hdinfo.go

@ -13,6 +13,15 @@ import (
"strings"
)
type Iplist struct {
Ips []Ips `json:"ip"`
}
type Ips struct {
Netcard string `json:"netcard"`
Mac string `json:"mac"`
Ip string `json:"ip"`
}
// json 结构体
type HdResp struct {
Status string `json:"status"` //状态
@ -40,6 +49,7 @@ func Hdinfo(w http.ResponseWriter, r *http.Request) {
fmt.Println("获取主机名失败:", err)
return
}
// respone file list
response := HdResp{
Status: "success",
@ -60,12 +70,15 @@ func Hdinfo(w http.ResponseWriter, r *http.Request) {
}
func getMachieNet() string {
var iplist Iplist
var ret []string
ifaces, err := net.Interfaces()
if err != nil {
fmt.Println("无法获取网络接口信息:", err)
} else {
for _, iface := range ifaces {
ret = append(ret, iface.Name)
ret = append(ret, iface.HardwareAddr.String())
// ip地址信息等
@ -77,6 +90,16 @@ func getMachieNet() string {
// 合并到ret 中
ret = append(ret, strings.Join(ipaddr, ","))
iplist.Ips = append(iplist.Ips, Ips{iface.Name, iface.HardwareAddr.String(), strings.Join(ipaddr, ",")})
//
jsonobj, err := json.Marshal(iplist)
if err != nil {
fmt.Println("er", err)
}
ret[0] = string(jsonobj)
// fmt.Println("网络接口名称:", iface.Name)
// fmt.Println("硬件地址 (MAC):", iface.HardwareAddr)
// addrs, _ := iface.Addrs()
@ -86,7 +109,9 @@ func getMachieNet() string {
// fmt.Println()
}
}
return strings.Join(ret, ",")
return ret[0]
// return strings.Join(ret, ",")
}

Loading…
Cancel
Save