第二十四篇:创建最简单的Socket服务端和客户端代码
一:网络模型

二:Socket

创建服务端和客户端文件

三:服务端代码
package main
import (
"fmt"
"io"
"net"
)
func main() {
lis,err:=net.Listen("tcp","127.0.0.1:8099")
if err !=nil{
fmt.Println(err.Error())
return
}
defer lis.Close()
fmt.Println("创建监听成功,等待客户端连接")
client,err:=lis.Accept()
if err !=nil{
fmt.Println(err.Error())
return
}
defer client.Close()
for {
buf:=make([]byte,8)
n,err:=client.Read(buf)
if err !=nil{
if err==io.EOF{
break
}
fmt.Println(err.Error())
return
}
fmt.Printf("读取到%d,内容是:%s",n,string(buf))
}
}
四:客户端代码
package main
import (
"fmt"
"net"
)
func main() {
conn,err:=net.Dial("tcp","127.0.0.1:8099")
if err !=nil{
fmt.Println(err.Error())
return
}
defer conn.Close()
conn.Write([]byte("I am pizixu"))
}

浙公网安备 33010602011771号