文章目录
.Net网络通信组件 - TouchSocket
1、新建.Net8控制台项目
2、Nuget安装TouchSocket组件
install-package TouchSocket
3、编写服务端代码
using System.Text;
using TestTouchSocketApp.TouchSockets.Dtos;
using TouchSocket.Core;
using TouchSocket.Sockets;
namespace TestTouchSocketApp.TouchSockets
{
public class TestTouchSocketServer
{
public TestTouchSocketServer()
{
//初始化服务端
InitServer();
}
public TcpService TcpService {
get; set; }
public List<TouchSocketClientDto> Clients {
get; set; }
/// <summary>
/// 初始化服务端
/// </summary>
private void InitServer()
{
//初始化
TcpService = new TcpService();
//初始化
Clients = new();
TcpService.Connecting += (client, e) =>
{
//返回
return EasyTask.CompletedTask;
};
TcpService.Connected += (client, e) =>
{
//初始化
TouchSocketClientDto clientDto = new();
//赋值
clientDto.Index = Clients.Count + 1;
clientDto.ClientId = client.Id;
clientDto.Host = client.IP;
clientDto.Port = client.Port;
clientDto.Online = true;
clientDto.ConnectTime = DateTime.Now;
//添加
Clients.Add(clientDto);
//记录日志
LingbugLogUtil.Info($"有新客户端上线啦:{
TouchSocketClientDto.GetContentStr(clientDto)}");
//返回
return EasyTask.CompletedTask;
};
TcpService.Received += (client, e) =>
{
try
{
//读取
var bytes = e.ByteBlock.ToArray