昨天我们已经编写好了一个服务端的聊天室,今天我们来写一个客户端,我们给他起个名字叫做client.go
func main() {
// 客户端进行拨号
conn, err := net.Dial("tcp", ":9090")
if err != nil {
panic(err)
}
done := make(chan struct{})
go func() {
io.Copy(os.Stdout, conn)
log.Println("done")
done <- struct{}{}
}()
mustCopy(conn, os.Stdin)
conn.Close()
<-done
}
func mustCopy(dst io.Writer, src io.Reader) {
if _, err := io.Copy(dst, src); err != nil {
log.Fatal(err)
}
}
启动server.go,然后开启多个client.go,我们可以看到我们发送的消息能被多个client端看到