首页 > 其他分享 >.net core Fleck WebSocket使用笔记

.net core Fleck WebSocket使用笔记

时间:2023-08-11 18:01:46浏览次数:42  
标签:core ConnectionInfo WebSocket socket clientUrl Fleck using public 客户端

@@.net core Fleck

 

socket帮助类

    using Fleck;
    using KOTL_EvidenceService.Model;
    using System;
    using System.Collections.Generic;

    namespace KOTL_EvidenceService.Util
    {
        public class ServerHelper
        {
            WebSocketServer server = null;
            SessionEntiy session = new SessionEntiy();
            public ServerHelper()
            {
                server = new WebSocketServer("ws://192.168.0.36:7010");//监听所有的的地址
                                                                       //出错后进行重启
                server.RestartAfterListenError = true;
            }

            public void Start()
            {
                //开始监听
                server.Start(socket =>
                {
                    socket.OnOpen = () => OnOpen(socket);
                    socket.OnClose = () => OnClose(socket);
                    socket.OnMessage = message => //接受客户端网页消息事件
                    {
                        string clientUrl = socket.ConnectionInfo.ClientIpAddress + ":" + socket.ConnectionInfo.ClientPort;
                        Console.WriteLine(DateTime.Now.ToString() + "|服务器:【收到】来客户端网页:" + clientUrl + "的信息:\n" + message);
                    };
                });
            }

            public void OnOpen(IWebSocketConnection socket)
            {
                //获取客户端网页的url
                string clientUrl = socket.ConnectionInfo.ClientIpAddress + ":" + socket.ConnectionInfo.ClientPort;
                Console.WriteLine(DateTime.Now.ToString() + "|服务器:和客户端网页:" + clientUrl + " 建立WebSock连接!");
            }

            //连接关闭事件
            public void OnClose(IWebSocketConnection socket)
            {
                string clientUrl = socket.ConnectionInfo.ClientIpAddress + ":" + socket.ConnectionInfo.ClientPort;
                Console.WriteLine(DateTime.Now.ToString() + "|服务器:和客户端网页:" + clientUrl + " 断开WebSock连接!");
            }
        }
    }
    调用

    ServerHelper websocket = new ServerHelper();
    websocket.Start();

 

————————————————
版权声明:本文为CSDN博主「qq_40580931」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40580931/article/details/120781798

标签:core,ConnectionInfo,WebSocket,socket,clientUrl,Fleck,using,public,客户端
From: https://www.cnblogs.com/wl-blog/p/17623651.html

相关文章

  • c#--Fleck WebSocket使用 (C#版Websocket实例)
    -->https://blog.csdn.net/qq_40580931/article/details/120781798 推荐几篇文章:WebSocket实战C#版Websocket实例C#工作总结(一):Fleck的WebSocket使用1.服务端代码usingFleck;usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;namespaceWebSocketTes......
  • 通过 Javacore 诊断线程挂起等性能问题
    Javacore与WebSphereCommerce性能问题近年来,依据WebSphereCommerce(以下简称为WC)搭建的电子商务网站系统日益增多。由于系统本身的复杂性,一旦系统出现问题,尤其是性能问题,问题诊断和定位就会非常困难。下图所示为由WC系统为核心搭建的电子商务网站的一般逻辑架构,如图......
  • 解决net core while true 内存堆积问题
      在.NETCore中,可以使用 Task.Delay 方法结合递归调用来实现无限循环的方式,并且每次循环都释放内存。下面是一个示例代码: usingSystem;usingSystem.Threading;usingSystem.Threading.Tasks;publicclassProgram{publicstaticasyncTaskMain(str......
  • ef core的FirstOrDefault()方法取的是第二个元素bug,原因未明
    如图所示:location=locationList.OrderBy(x=>x.Piler).FirstOrDefault();//取到了第二条记录location=locationList.OrderBy(x=>x.Piler).ToList().FirstOrDefault();//取到了第一条记录延迟加载导致的?不应该,我使用sql语句到数据库查询,没问题,这个问题触发的条件没搞明......
  • .NET Core多线程 (4) 锁机制
    合集:.NETCore多线程温故知新.NETCore多线程(1)Thread与Task.NETCore多线程(2)异步-上.NETCore多线程(3)异步-下.NETCore多线程(4)锁机制.NETCore多线程(5)常见性能问题 去年换工作时系统复习了一下.NETCore多线程相关专题,学习了一线码农老哥的《.NET5多线程编程实战》......
  • ASP.NET Core – View Component
    前言以前写过 Asp.netcore学习笔记(ViewComponent组件),这篇作为翻新版. 参考Docs– ViewcomponentsinASP.NETCoreDon'treplaceyourViewComponentswithRazorComponents (RazorComponent无法替代ViewComponent) 介绍ViewComponent是 Partia......
  • Asp.Net Core 之 @Html.Action 迁移
    想必只要接触了netcore的小伙伴们已经发现@html.Action()方法官方已经不提供支持了,转而使用 ViewComponents替代了,同时也增加了TagHelper。但是如果想用以前的@Html.Action()方法,我们其实可以自己动手去实现它。下面就开始实现之旅吧!1、创建静态类 HtmlHelperViewExt......
  • solr的master-slave和Multiple Cores
    Solrmulticore配置April21st,2011绚丽也尘埃LeaveacommentGotocommentsSolr继续学习中,感觉Solr的multicore主要用途有两个:1、充分利用服务器资源。在一台服务器上部署不用的搜索应用。2、提高一个应用服务能力,在服务器上同时部署同一个应用的多个core,这些core共用一份索......
  • 使用 WebSockets、React 和 TypeScript 构建实时投票应用程序
    长话短说WebSocket允许您的应用程序具有“实时”功能,其中更新是即时的,因为它们是在开放的双向通道上传递的。这与CRUD应用程序不同,CRUD应用程序通常使用HTTP请求,必须建立连接、发送请求、接收响应,然后关闭连接。要在React应用程序中使用WebSockets,您需要一个专用服务器,例......
  • 【HMS Core】支付失败报错60004
    【关键字】报错、60004、developerPayload、支付服务【问题描述1】集成应用内支付服务,发现部门用户支付失败报错60004【问题分析】根据官网错误码,是由于支付接口访问过频造成的那么,这个异常是针对用户的单台设备访问频次过高还是针对APP调用频次过高,如果是单台设备,这个频次大概是多......