1.unity 画一个客户端程序界面
2.新建net.cs文件,编写客户端程序。创建Socket后,客户端通过Connect连接服务器,然后向服务器发送“Hello Unity!”。发送后等待服务器回应,并把服务器回应的字符串显示出来。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Net;
using System.Net.Sockets;
using UnityEngine.UI;
public class net : MonoBehaviour {
//与服务端的套接字
Socket socket;
//服务端的ip和端口
public InputField hostInput;
public InputField portInput;
//文本框
public Text recvText;
public Text clientText;
//接收缓冲区
const int BUFFER_SIZE = 1024;
byte[] readBuff = new byte[BUFFER_SIZE];
public void Connection(){ //Connection方法,到时按钮要绑定此方法
//Socket
socket = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
//Connect
string host = hostInput.text;
int port = int.Parse (portInput.text);
socket.Connect (host, port);
clientText.text = "客户端地址" + socket.LocalEndPoint.ToString();
//Send
string str = System.DateTime.Now.ToString(); //发送服务器当前的时间
byte[] bytes = System.Text.Encoding.Default.GetBytes (str);
socket.Send (bytes);
//Recv
int count = socket.Receive(readBuff);
str = System.Text.Encoding.UTF8.GetString (readBuff, 0, count);
recvText.text = str;
//close
socket.Close();
}
}
3.添加net组件,设置属性(按钮要绑定Connection方法,还有文本框等要绑定对应组件)。运行服务端和客户端程序。输入服务器端IP和端口号,点击按钮。客户端会显示服务端的回应信息
备注:文章内容,代码都来源于 《Unity3D网络游戏实战》(罗培羽 著)这本书