一 Socket简介:
1 先从服务器端说起。服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen),调用accept阻塞,等待客户端连接。
2 在这时如果有个客户端初始化一个Socket,然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了。
3 客户端发送数据请求,服务器端接收请求并处理请求,然后把回应数据发送给客户端,客户端读取数据,最后关闭连接,一次交互结束。
二 代码实现:
1 打开vs2022,新建控制台应用项目1:
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
//服务器端需要创建一个Socket,绑定到一个本地IP地址和端口上,然后开始监听来自客户端的连接请求。
//一旦接收到连接请求,服务器就可以与客户端通信了。
class Server
{
static void Main(string[] args)
{
//定义端口号
IPAddress ipAddr = IPAddress.Parse("127.0.0.1");
int port = 11000;
// 创建TCP/IP socket
Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)