|
|
|
@ -4,10 +4,8 @@ import ( |
|
|
|
"fmt" |
|
|
|
"fss/config" |
|
|
|
"fss/util" |
|
|
|
"io" |
|
|
|
"net" |
|
|
|
"net/http" |
|
|
|
"os" |
|
|
|
"path" |
|
|
|
"path/filepath" |
|
|
|
"strings" |
|
|
|
@ -90,35 +88,16 @@ func UdpSendFile(serip string, absfilepath string, fname string, message string, |
|
|
|
return |
|
|
|
} |
|
|
|
defer conn.Close() |
|
|
|
// 3、读取文件
|
|
|
|
zf, err := os.Open(absfilepath) |
|
|
|
if err != nil { |
|
|
|
return |
|
|
|
} |
|
|
|
defer zf.Close() |
|
|
|
// 4、 循环读取,写入
|
|
|
|
buf := make([]byte, 4096) |
|
|
|
for { |
|
|
|
n, err := zf.Read(buf) |
|
|
|
if err != nil { |
|
|
|
if err == io.EOF { |
|
|
|
fmt.Println("文件发送完毕") |
|
|
|
} else { |
|
|
|
fmt.Printf("zf read err:%s\n", err) |
|
|
|
} |
|
|
|
return |
|
|
|
} |
|
|
|
conn.Write(buf[:n]) |
|
|
|
} |
|
|
|
|
|
|
|
// 3、在端口发送数据
|
|
|
|
// message := fmt.Sprintf("%s%s%s", config.G.DeviceName, "|", "sender")
|
|
|
|
// 向链接通道发送数据 数据包头
|
|
|
|
// conn.Write([]byte(message))
|
|
|
|
conn.Write([]byte(message)) |
|
|
|
// 发送文件
|
|
|
|
// go func() {
|
|
|
|
// err := util.SendFiles(absfilepath, fmt.Sprintf("http://%s/rc", remoteAddr))
|
|
|
|
// if err != nil {
|
|
|
|
// fmt.Printf("Send file to %s error: %s\n", remoteAddr, err)
|
|
|
|
// }
|
|
|
|
// }()
|
|
|
|
go func() { |
|
|
|
err := util.SendFiles(absfilepath, fmt.Sprintf("http://%s/rc", remoteAddr)) |
|
|
|
if err != nil { |
|
|
|
fmt.Printf("Send file to %s error: %s\n", remoteAddr, err) |
|
|
|
} |
|
|
|
}() |
|
|
|
} |
|
|
|
|