/**
golang udp
*/
package main
import (
"fmt"
"net"
"strings"
"time"
)
var p = fmt.Println
func server() {
udpAddr, _ := net.ResolveUDPAddr("udp4", "0.0.0.0:7070")
conn, e := net.ListenUDP("udp4", udpAddr)
defer conn.Close()
if e != nil {
return
}
for {
b := make([]byte, 4096)
_, remoteAddr, e := conn.ReadFromUDP(b)
if e != nil {
continue
}
req := strings.TrimSpace(string(b))
p("来之客户端的数据:您输入了>>"+req, remoteAddr)
}
}
func main() {
//server
go server()
//client
tcpAddr, _ := net.ResolveUDPAddr("udp4", "127.0.0.1:7070")
conn, e := net.DialUDP("udp4", nil, tcpAddr)
defer func() {
conn.Close()
}()
if e != nil {
return
}
p("-----客户端:请输入.....")
for {
var input string
fmt.Scanln(&input)
conn.Write([]byte(input))
if input == "exit" || input == "quit" {
break
}
}
time.Sleep(4 * time.Second)
}
golang udp
最新推荐文章于 2023-04-07 15:13:12 发布