1. 服務端代碼
// 1. 新建一個Socket 服務器端 連接對象
// 參數 尋址范圍,數據類型,協議格式
Socket tcpServer = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
byte[] ip = { 192, 168, 199, 117 };
IPAddress address = new IPAddress(ip);
IPEndPoint point = new IPEndPoint(address, 8090);
tcpServer.Bind(point); // 2. 綁定Ip和端口號
tcpServer.Listen(100); // 3. 設置監聽連接的最大請求數
Socket newSocket = tcpServer.Accept(); // 4. 等待客戶端的連接,會阻塞當前線程,直到接收到客戶端的連接
string sendMessage = "Hello Welcome Connect";
newSocket.Send(Encoding.UTF8.GetBytes(sendMessage)); // 5.向客戶端發送一條消息
byte[] data = new byte[1024];
int length = newSocket.Receive(data);
Console.WriteLine("接收到客戶端的數據"+Encoding.UTF8.GetString(data, 0, length));
Console.ReadKey();
2. 客戶端代碼
//1. 建立客戶端連接對象
// 參數 尋址范圍,數據類型,協議格式
Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// 2. 建立一個連接,請求連接到服務器
clientSocket.Connect(new IPEndPoint(new IPAddress(new byte[] { 192, 168, 199, 117 }), 8090));
// 建立一個用來接受數據的容器
byte[] data = new byte[1024];
// 3. 接受服務端發送的數據
int length = clientSocket.Receive(data); // 該數組用來接受數組,接受服務端傳遞的數據 , 返回值,用來表示本次接收到的數據長度
// 4. 將服務器端發送過來的數據轉換成字符串
string reciveMessage = Encoding.UTF8.GetString(data, 0, length);
Console.WriteLine(reciveMessage);
string message = Console.ReadLine();
clientSocket.Send(Encoding.UTF8.GetBytes(message));
Console.ReadKey();
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。