unity简单服务器和客户端

xiaoxiao2021-02-27  135

unity简单服务器和客户端

服务器

目的
在服务器收到客户端消息时返回一条消息
服务器搭建流程
1.创建一个服务器实例 Socket 2.创建一个IPAdress并为IPAdress添加地址 3.创建一个IPendPoint,并为IPEndPoint添加IPAdress和端口 4.为Socket绑定IPEndPoint 5.循环监听端口

6.收到消息并反馈

代码
Console.WriteLine("hello world"); Socket listenfd = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPAddress ipAdr = IPAddress.Parse("127.0.0.1"); IPEndPoint ipEp = new IPEndPoint(ipAdr,12345); listenfd.Bind(ipEp); listenfd.Listen(0); Console.WriteLine("服务器已经启动"); while (true) { Socket connfd = listenfd.Accept(); Console.WriteLine("客户端:"); byte[] readBuff = new byte[1024]; int count = connfd.Receive(readBuff); string str = System.Text.Encoding.UTF8.GetString(readBuff, 0, count); Console.WriteLine("服务器收到:" + str); byte[] writebuff = System.Text.Encoding.Default.GetBytes("服务器发送:" + str); connfd.Send(writebuff); }

客户端

目的
向服务器发送数据并接受服务器端消息并显示
客户端搭建流程
1.创建一个Socket实例 2.为socket实例绑定服务器的IP地址和端口 3.给服务器发送消息 4.接受服务器的反馈
代码
在unity中UI中创建两个Input Field,一个输入服务器地址,另一个输入服务器端口。创建一个button,点击button启动connection public void Connection() { socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); string iptext = ip.text.ToString(); int porttext = int.Parse(port.text.ToString()); socket.Connect(iptext, porttext); ip.text = "客户端地址:" + socket.LocalEndPoint.ToString(); string str = "hello world"; byte[] by = System.Text.Encoding.UTF8.GetBytes(str); socket.Send(by); int count = socket.Receive(readbuff); string read = System.Text.Encoding.Default.GetString(readbuff, 0, count); text.text = read; socket.Close();
转载请注明原文地址: https://www.6miu.com/read-16147.html

最新回复(0)