C#(SuperWebSocket)与websocket通信

简介: 原文:C#(SuperWebSocket)与websocket通信客户端代码 点击可以查看一些关于websocket的介绍 1 DOCTYPE html> 2 3 4 5 6 7 8 9 10 11 var ...
原文: C#(SuperWebSocket)与websocket通信

客户端代码

点击可以查看一些关于websocket的介绍

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6 </head>
 7 <body>
 8 <input type="button" id="send" onclick="send()" value="发送">
 9 <input type="text"  id="message">
10 <script type="text/javascript">
11     var  wsClient=new WebSocket( 'ws://localhost:40001');
12     wsClient.open=function(e){
13         console.log("Connected!");
14     }
15     wsClient.onclose=function(e){
16         console.log("Disconnected!");
17     }
18     wsClient.onmessage=function(e){
19         console.log("接收消息:"+e.data);
20     }
21     wsClient.onerror=function(e){
22         console.log(e.data);
23     }
24     function send(){
25         var  oText=document.getElementById("message");
26         wsClient.send(oText.value);
27     }
28 </script>
29 </body>
30 </html>

服务器端代码

  SuperWebSocket  继承了Socket框架SuperSocket,是一个WebSocket服务器的网络实现。

 1     class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             WebSocketServer server = new WebSocketServer();
 6             server.NewSessionConnected += server_NewSessionConnected;
 7 
 8             server.NewMessageReceived += server_NewMessageReceived;
 9             server.SessionClosed += server_SessionClosed;
10             try
11             {
12                 server.Setup("127.0.0.1", 40001);//设置端口
13                 server.Start();//开启监听
14             }
15             catch (Exception ex)
16             {
17                 Console.WriteLine(ex.Message);
18             }
19             Console.ReadKey();
20         }
21 
22         static void server_SessionClosed(WebSocketSession session, SuperSocket.SocketBase.CloseReason value)
23         {
24             Console.WriteLine(session.Origin);
25         }
26 
27         static void server_NewMessageReceived(WebSocketSession session, string value)
28         {
29             Console.WriteLine(value);
30             session.Send(value);
31         }
32 
33         static void server_NewSessionConnected(WebSocketSession session)
34         {
35             Console.WriteLine(session.Origin);
36         }
37     }

刚开始自己也试着写了个websocket的服务器,但是觉得麻烦,后来还是直接用SuperWebSocket了,因为它真的简单实用高大上。直接在NuGet包中就可以直接安装,

顺带把常用的log4net和njson都装了,一步到位啊。

 

目录
相关文章
|
1月前
|
数据处理 C# C++
如何使用C#和C++结构体实现Socket通信
如何使用C#和C++结构体实现Socket通信
|
6月前
|
监控 前端开发 Cloud Native
解决WebSocket通信:前端拿不到最后一条数据的问题
解决WebSocket通信:前端拿不到最后一条数据的问题
130 0
|
5月前
|
Go API 开发者
Golang Websocket框架:实时通信的新选择
Golang Websocket框架:实时通信的新选择
|
4月前
|
前端开发 JavaScript Java
springboot websocket通信
springboot websocket通信
31 1
|
4月前
|
前端开发 网络协议 JavaScript
WebSocket: 实时通信的理解与认识
WebSocket: 实时通信的理解与认识
|
9月前
|
移动开发 监控 网络协议
基于Socket通讯(C#)和WebSocket协议(net)编写的两种聊天功能(文末附源码下载地址)
基于Socket通讯(C#)和WebSocket协议(net)编写的两种聊天功能(文末附源码下载地址)
|
4月前
关于websocket的理解和它与其他通信方式的区别
关于websocket的理解和它与其他通信方式的区别
51 0
|
4月前
|
C#
C# | 极简代码实现串口通信,功能超丰富 (使用BytesIO通信库)
C# 极简代码实现串口通信,功能超丰富 安装NuGet库 程序截图 事件监听 设计及实现 界面 代码 源码下载
62 0
C# | 极简代码实现串口通信,功能超丰富 (使用BytesIO通信库)
|
4月前
|
传感器 监控 网络协议
C# | 上位机开发新手指南(二)上位机通信
在上位机开发中,串口通信和TCP通信是两种常见的通信方式。串口通信是指通过串口将数据发送和接收到控制器或其他外设中,TCP通信则是通过网络将数据传输到远程设备中。下面介绍一下为什么学习串口通信和TCP通信在上位机开发中是很重要的。
161 0
C# | 上位机开发新手指南(二)上位机通信
|
4月前
|
C#
C# | 使用AutoResetEvent和ManualResetEvent进行线程同步和通信
在多线程编程中,AutoResetEvent 和 ManualResetEvent 是两个常用的同步原语。它们用于线程间的通信和协调,以确保线程按照特定的顺序执行。本篇博客将介绍这两种同步原语的概念、用法和区别。
46 0
C# | 使用AutoResetEvent和ManualResetEvent进行线程同步和通信