C# 服务端监听客户端连接
时间: 2023-10-04 12:04:18 浏览: 216
C# 监听端口
在 C# 中实现服务端监听客户端连接可以使用 Socket 类。以下是一个简单的示例代码:
```csharp
using System;
using System.Net;
using System.Net.Sockets;
namespace ServerExample
{
class Program
{
static void Main(string[] args)
{
// 创建一个 TCP/IP socket
Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// 获取本地 IP 地址
IPAddress ipAddress = IPAddress.Parse("127.0.0.1");
// 绑定 IP 地址和端口号
IPEndPoint localEndPoint = new IPEndPoint(ipAddress, 8080);
listener.Bind(localEndPoint);
// 开始监听连接请求
listener.Listen(10);
Console.WriteLine("等待客户端连接...");
while (true)
{
// 接受连接请求并创建一个新的 socket
Socket handler = listener.Accept();
// 处理客户端请求
byte[] buffer = new byte[1024];
int bytesReceived = handler.Receive(buffer);
string data = Encoding.ASCII.GetString(buffer, 0, bytesReceived);
Console.WriteLine("接收到客户端数据:" + data);
// 发送响应给客户端
byte[] response = Encoding.ASCII.GetBytes("已接收到您的请求");
handler.Send(response);
// 关闭 socket
handler.Shutdown(SocketShutdown.Both);
handler.Close();
}
}
}
}
```
上述代码创建了一个服务端 socket,绑定了本地 IP 地址和端口号,并且开始监听连接请求。当有客户端连接请求时,接受连接请求并创建一个新的 socket,处理客户端请求并发送响应,最后关闭 socket。
阅读全文