fleck 客户端_C#中使用Fleck实现WebSocket通信简例
Fleck是一个开源的使用C#封装的WebSocket服务端工具库。
一、服务端搭建
这里选择在.net core 2.1框架下新建了一个控制台程序
在项目里使用NuGet引入Fleck包
NuGet引入Fleck包
其它方式也可以,最终引入项目里都是Fleck.dll
Fleck.dll
二、服务端实例
Github上的简单例子:
简单例子
简单实例:
using System;
using System.Collections.Generic;
using System.Linq;
using Fleck;
namespace ConsoleApp1
{
class Program
{
static voidMain(string[] args)
{
socketTest();
}
Public static voidsocketTest()
{
//管理Socket
var allSockets = newList();
//配置地址
var server = newWebSocketServer("ws://127.168.0.100:50000");
//出错后进行重启
server.RestartAfterListenError = true;
//开始监听
server.Start(socket=>
{
//关联连接建立事件
socket.OnOpen= () =>
{
Console.WriteLine("Open!");
allSockets.Add(socket);
};
//关联连接关闭事件
socket.OnClose= () =>
{
Console.WriteLine("Close!");
allSockets.Remove(socket);
};
//接受客户端消息事件
socket.OnMessage = message =>
{
Console.WriteLine(message);
allSockets.ToList().ForEach(s => s.Send("bili: " +message));
};
});
var input =Console.ReadLine();
foreach (varsocket in allSockets.ToList())
{
socket.Send(input);
}
input =Console.ReadLine();
}
}
}
socket
三、客户端测试实例(网上copy)
websocket client
websocket client Test
var start = function () {
var inc = document.getElementById('incomming');
var wsImpl = window.WebSocket || window.MozWebSocket;
var form = document.getElementById('sendForm');
var input = document.getElementById('sendText');
inc.innerHTML += "connecting to server ..
";
// create a new websocket and connect
window.ws = new wsImpl('ws://127.168.0.100:50000‘’);
// when data is comming from the server, this metod is called
ws.onmessage = function (evt) {
inc.innerHTML += evt.data + '
';
};
// when the connection is established, this method is called
ws.onopen = function () {
inc.innerHTML += '.. connection open
';
};
// when the connection is closed, this method is called
ws.onclose = function () {
inc.innerHTML += '.. connection closed
';
}
form.addEventListener('submit', function (e) {
e.preventDefault();
var val = input.value;
ws.send(val);
input.value = "";
});
}
window.onload = start;
test
浏览器打开网页就可以测试了。
fleck 客户端_C#中使用Fleck实现WebSocket通信简例相关推荐
- c语言实现stomp协议客户端,在vue中使用SockJS实现webSocket通信
最近接到一个业务需求,需要做一个聊天信息的实时展示的界面,这就需要和 服务器 端建立webSocket连接,从而实现数据的实时获取和视图的实时刷新.在此将我的实现记录下来,希望可以给有同样需求的人一些 ...
- 在vue中使用SockJS实现webSocket通信
最近接到一个业务需求,需要做一个聊天信息的实时展示的界面,这就需要和服务器端建立webSocket连接,从而实现数据的实时获取和视图的实时刷新.在此将我的实现记录下来,希望可以给有同样需求的人一些帮助 ...
- fleck 客户端_C# Fleck的WebSocket使用
(1). Web网页端代码 WebSocket测试 .div1 { height:88px; width:173px; border:1px solid blue; margin:auto; } h4 ...
- C# WebSocket(Fleck) 客户端:html Winfrom
目录 一.简介 二.服务端 1.新建项目 2.WebSocketHelper 3.Program 三.客户端 1.html 2.Winform 结束 一.简介 WebSocket 是一种在单个TCP连 ...
- Android中脱离WebView使用WebSocket实现群聊和推送功能
WebSocket是Web2.0时代的新产物,用于弥补HTTP协议的某些不足,不过他们之间真实的关系是兄弟关系,都是对socket的进一步封装,其目前最直观的表现就是服务器推送和聊天功能.更多知识参考 ...
- 在vue中webSocket通信
1.简单介绍 基于webSocket通信的库主要有 socket.io,SockJS,这次用的是 SockJS. 2.前提 这里我们使用sockjs-client.stomjs这两个模块,要实现web ...
- 在.NET客户端程序中使用多线程
在.NET客户端程序中使用多线程通常认为在编写程序中用到多线程是一个高级的编程任务,容易发生错误.在本月的栏目中,我将在一个Windows窗体应用程序中使用多线程,它具有实际的意义,同时尽量使事情简单 ...
- [转]MSDN - 在客户端脚本中为 UpdateProgress 控件编程
本文转自: http://msdn.microsoft.com/zh-cn/library/bb386518.aspx 在本教程中,将通过编写 ECMAScript (JavaScript) 代码来扩 ...
- activex 控件的id 定义位置+使用ocx控件的客户端程序中对控件定义的文件中控件id定义的位置...
activex 控件的id 定义位置 // SuperDisplayCtl.cpp IMPLEMENT_OLECREATE_EX(CSuperDisplayCtrl, "SuperDispl ...
最新文章
- catia 工厂设计_SolidWorks、creo、UG哪个更适合机械设计?
- SCCM2012 RBA
- leetcode 473. Matchsticks to Square | 473. 火柴拼正方形(递归)
- 武汉大学计算机考研 专业课程,2018武汉大学计算机考研复试经验贴
- Asp.net Core 2.1新功能Generic Host(通用主机)深度学习
- 快速排序在最坏的情况下时间复杂度(Ω(nlgn)(算法导论第三版9.3-3))
- 建立一个mysql 文件命令是_使用命令行创建数据库
- 日志系统实战(一)—AOP静态注入
- 数学竞赛辅导陈启浩pdf_高中数学一题多解经典题型汇编(一)
- WinISO5.3 注册码 不需要注册机!
- Web项目【用户管理系统】完整版
- 解决win10虚拟机和主机不能互相粘贴复制的问题
- java接口自动化监控_java接口自动化(三) - 手工接口测试到自动化框架设计之鸟枪换炮...
- C语言从入门到精通——指针基础
- php mysql 单引号_插入MySQL时转义PHP中的单引号
- 微信小程序——简单饮食推荐(四)
- 16,甲流疫情死亡率
- 去除数组中指定元素的方法
- 小小的宏 大大的世界
- 住在储藏室的小夫妻【zt】