用.net平台实现websocket server

websocket测试地址 http://www.websocket-test.com/

 

复制代码
using SuperWebSocket;
using System;
using System.Collections.Generic;

namespace WebsocketServer
{
    // NuGet SuperWebSocketNETServer
    class WebSocketServerHelper
    {
        List<WebSocketSession> sessionList = new List<WebSocketSession>();

        public void Start(int port)
        { 
            WebSocketServer webSocketServer = new WebSocketServer();
            webSocketServer.NewSessionConnected += WebSocketServer_NewSessionConnected; 
            webSocketServer.SessionClosed += WebSocketServer_SessionClosed;
            webSocketServer.NewMessageReceived += WebSocketServer_NewMessageReceived;
            if (!webSocketServer.Setup(port))
            {
                Console.WriteLine("设置服务监听失败!");
                return;
            }
            if (!webSocketServer.Start())
            {
                Console.WriteLine("启动服务监听失败!");
                return;
            }
            else
            {
                Console.WriteLine("启动服务监听成功,port=" + port);
            }
        }

        void WebSocketServer_NewSessionConnected(WebSocketSession session)
        {
            sessionList.Add(session); 
            Console.WriteLine("ip: " + session.RemoteEndPoint.ToString() + "已经连接");
        }

        void WebSocketServer_SessionClosed(WebSocketSession session, SuperSocket.SocketBase.CloseReason value)
        {
            sessionList.Remove(session);
            Console.WriteLine("ip: " + session.RemoteEndPoint.ToString() + "断开连接");
        }

        void WebSocketServer_NewMessageReceived(WebSocketSession session, string value)
        {
            Console.WriteLine(value);
            session.Send(value);
        } 
    }
}
复制代码

 

posted @   CHHC  阅读(1188)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示