先写客户端
客户端发送信息
func main() { fmt.Println("请输入:") var message string fmt.Scan(&message) conn, err := net.Dial("tcp", "127.0.0.1:8000") if err != nil { fmt.Println("err = ", err) return } defer conn.Close() conn.Write([]byte(message)) bytes := make([]byte, 1024) num, err := conn.Read(bytes) if err != nil { fmt.Println("err = ", err) return } fmt.Println("服务器回复:", string(bytes[:num])) }
然后是服务器
func main() { listener, err := net.Listen("tcp", "127.0.0.1:8000") if err != nil { fmt.Println("err = ", err) return } defer listener.Close() for { conn, err := listener.Accept() if err != nil { fmt.Println("err = ", err) continue } handleConn(conn) } } func handleConn(conn net.Conn) { defer conn.Close() bytes := make([]byte, 1024) num, err := conn.Read(bytes) if err != nil { fmt.Println("err = ", err) return } conn.Write(bytes[:num]) }