|
|
|
@ -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, ",")
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|