使用websocket-sharp搭建一个简单的websocket服务端

本文详细介绍如何使用WebSocketSharp库在C#中创建WebSocket服务器。通过创建Echo类并实现消息处理、连接关闭和打开的方法,展示了如何响应客户端的请求,包括心跳检测等操作。同时,提供了启动WebSocket服务器的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用方法:将websocket-sharp.dll添加进引用,并添加using WebSocketSharp.Server命令

------------------------------------------------------首先创建echo类------------------------------------------------------------------

    public class Echo : WebSocketBehavior
    {

        protected override void OnMessage(MessageEventArgs e)
        {
            try
            {
                Send(Handle(e.Data));
            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message, "Error: Echo.cs faild");
            }

        }

        protected override void OnClose(CloseEventArgs e)
        {
            base.OnClose(e);
            console.writeline("websocket close")

        }
        protected override void OnOpen()
        {
            console.writeline("websocket open")
        }

        private string Handle(string data)
        {
            string returnMsg;
            Msg msg;
            JObject jo = (JObject)JsonConvert.DeserializeObject(data);
            string action = jo["action"].ToString();
            switch (action)
            {
                case "heartcheck":  // 心跳检测
                    msg = new Msg()
                    {
                        Action = "heartcheck",
                        Status = "success",
                    };
                    returnMsg = JsonConvert.SerializeObject(msg);
                    break;
            }
            return returnMsg;
        }
    }

------------------------------------------------------启动websocket------------------------------------------------------------------

                WebSocketServer wssv = new WebSocketServer("ws://127.0.0.1:" + socketServerAddr);
                //如wssv = new WebSocketServer("ws://127.0.0.1:2000");
                wssv.AddWebSocketService<Echo>("/Echo");
                wssv.Start();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值