首页 / C# / c#使用websocket
c#使用websocket
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c#使用websocket,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2361字,纯文字阅读大概需要4分钟。
内容图文
![c#使用websocket](/upload/InfoBanner/zyjiaocheng/610/6a9a2004b524443a8fbdcb2febaaeba5.jpg)
websocket可以把它当做是一个程序提供相应的服务的。
所以创建一个websocket首先要创建一个程序(服务)。所以我们可以用winform创建一个程序来启动websocket程序。(当然也可以用其他的方式,反正能创建一个websocket服务就行)
1、首先要引用fleck插件
2、贴代码
public static void Dosocket() { try { //存放连接服务器的socket对象 var allScokets = new List<IWebSocketConnection>(); var server = new WebSocketServer("ws://172.60.65.82:5555"); //创建webscoket服务端实例,到时用户连接这个socket(地址和端口随便填,不要冲突就行) server.Start(socket => { socket.OnOpen = () => { allScokets.Add(socket); //这是把每一个socket添加到allScokets中(表示当有一个页面连接上这个socket的时候,就会多一个socket) }; //关闭链接 socket.OnClose = () => { allScokets.Remove(socket); //用户断开socket连接时,就把这个用户的socket移除 }; //监听发送数据 socket.OnMessage = message => //给用户发送的消息 { foreach (IWebSocketConnection sockets in allScokets) { if (sockets.ConnectionInfo.Path.Equals($@"/?{message}")) //根据获取得到的message做相应的操作 { sockets.Send(wareHouse.getLocationRecord(message)); } } }; }); } catch (Exception) { } }
这样就创建完一个websocket了。
你可以把这段代码放在一个winform程序中,winform启动的时候启动这个websocket。
(我的是web api程序。所以放在了routeConfig文件中,在程序启动的时候回自动启动这个websocket)
2、如何调用
<script> //连接websocket var ws = new WebSocket("ws://172.60.65.82:5555"); ws.onopen = function () { console.log("连接成功!") }; ws.onmessage = function (result) { console.log("获取成功信息:" + result.data) }; ws.onerror = function (error) { console.log("获取错误信息:" + error.data) }; ws.onclose = function () { console.log("连接关闭!") };//绑定 $("#zhanban").on("keypress", function () { if (event.keyCode == "13") { //发送websocket if (ws.readyState == WebSocket.OPEN) { ws.send("123456"); } else { console.log("还未连接websocket!") } } }) </script>
连接socket可以传参数
var ws = new WebSocket("ws://172.60.65.82:5555?LW0601");
后台接收参数如上socket代码所示:
socket.OnMessage = message => { foreach (IWebSocketConnection sockets in allScokets) { if (sockets.ConnectionInfo.Path.Equals($@"/?{message}")) { sockets.Send(wareHouse.getLocationRecord(message)); } } };
注意:websocket只有在部分的浏览器中有用,在一些旧的浏览器中是没有用的。
内容总结
以上是互联网集市为您收集整理的c#使用websocket全部内容,希望文章能够帮你解决c#使用websocket所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。