基于HTML5的WebSocket的实例代码


Posted in HTML / CSS onAugust 15, 2018

基于HTML5的WebSocket的实例代码

客户端代码:

<html>
<head>
<script>
var socket;
if ("WebSocket" in window) {
var ws = new WebSocket("ws://127.0.0.1:8181");
socket = ws;
ws.onopen = function() {
console.log('连接成功');
};
ws.onmessage = function(evt) {
var received_msg = evt.data; 
document.getElementById("showMes").value+=evt.data+"\n";
};
ws.onclose = function() {
alert("断开了连接");
};
} else {
alert("浏览器不支持WebSocket");
}
function login(){
var message=document.getElementById("name").value+":"+document.getElementById("mes").value;
socket.send(message);
}
</script>
</head>
<body>
<textarea rows="3" cols="30" id="showMes" style="width:300px;height:500px;"></textarea>
<br/>
<label>名称</label>
<input type="text" id="name"/>
<br/>
<label>消息</label>
<input type="text" id="mes"/>
<button onclick="login();">发送</button>
</body>
</html>

winform服务端代码:

注:需先引入Fleck包

基于HTML5的WebSocket的实例代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using Fleck;
namespace socketService
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
CheckForIllegalCrossThreadCalls = false;
}
private void Form1_Load(object sender, EventArgs e)
{
//保存所有连接
var allSockets = new List<IWebSocketConnection>();
//初始化服务端
var server = new WebSocketServer("ws://0.0.0.0:8181");
//开始监听
server.Start(socket =>
{
//有客户端连接触发
socket.OnOpen = () =>
{
textBox3.Text += socket.ConnectionInfo.ClientIpAddress + " 连接 \r\n";
allSockets.Add(socket);
};
//有客户端断开触发
socket.OnClose = () =>
{
textBox3.Text += socket.ConnectionInfo.ClientIpAddress + " 断开连接 \r\n";
allSockets.Remove(socket);
};
//接收客户端发送的消息
socket.OnMessage = message =>
{
textBox3.Text += socket.ConnectionInfo.ClientIpAddress + " 发送了消息:" + message + "\r\n";
//发送接收到的消息给所有客户端
allSockets.ToList().ForEach(s => s.Send(message));
};
});
}
}
}

总结

以上所述是小编给大家介绍的基于HTML5的WebSocket的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

HTML / CSS 相关文章推荐
网页布局中CSS样式无效的十个重要原因详解
Aug 10 HTML / CSS
css3新增颜色表示方式分享
Apr 15 HTML / CSS
纯CSS3打造属于自己的“小黄人”
Mar 14 HTML / CSS
CSS3实现超酷的黑猫警长首页
Apr 26 HTML / CSS
CSS3 mask 遮罩的具体使用方法
Nov 03 HTML / CSS
你不知道的5个HTML5新功能
Jun 28 HTML / CSS
html Table 表头固定的实现
Jan 22 HTML / CSS
HTML5拖放效果的实现代码
Nov 17 HTML / CSS
mui几种页面跳转方式对比总结概括
Aug 18 HTML / CSS
Html5移动端网页端适配(js+rem)
Feb 03 HTML / CSS
css filter和getUserMedia的联合使用
Feb 24 HTML / CSS
常用的文件对应的MIME类型汇总
Apr 26 HTML / CSS
HTML5中canvas中的beginPath()和closePath()的重要性
Aug 24 #HTML / CSS
Html5移动端弹幕动画实现示例代码
Aug 27 #HTML / CSS
Html5页面在微信端的分享的实现方法
Aug 30 #HTML / CSS
canvas粒子动画背景的实现示例
Sep 03 #HTML / CSS
html5中去掉input type date默认样式的方法
Sep 06 #HTML / CSS
html5新特性与用法大全
Sep 13 #HTML / CSS
HTML5新控件之日期和时间选择输入的实现代码
Sep 13 #HTML / CSS
You might like
PHP中的cookie
2006/11/26 PHP
apache+codeigniter 通过.htcaccess做动态二级域名解析
2012/07/01 PHP
PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法
2014/08/28 PHP
PHP可变变量学习小结
2015/11/29 PHP
WordPress的主题编写中获取头部模板和底部模板
2015/12/28 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
2018/02/06 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
2018/06/16 PHP
JSON 学习之完全手册 图文
2007/05/29 Javascript
ASP.NET jQuery 实例14 在ASP.NET form中校验时间范围
2012/02/03 Javascript
定时器(setTimeout/setInterval)调用带参函数失效解决方法
2013/03/26 Javascript
javascript模块化是什么及其优缺点介绍
2013/09/02 Javascript
解析JavaScript中的不可见数据类型
2013/12/02 Javascript
JavaScript改变CSS样式的方法汇总
2015/05/07 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
2015/06/11 Javascript
JS模拟实现Select效果代码
2015/09/24 Javascript
JavaScript编写带旋转+线条干扰的验证码脚本实例
2016/05/30 Javascript
JS实现title标题栏文字不间断滚动显示效果
2016/09/07 Javascript
JS获取年月日时分秒的方法分析
2016/11/28 Javascript
分享十三个最佳JavaScript数据网格库
2017/04/07 Javascript
微信小程序实现顶部下拉菜单栏
2018/11/04 Javascript
原生JS实现动态添加新元素、删除元素方法
2019/05/05 Javascript
vue-loader中引入模板预处理器的实现
2019/09/04 Javascript
Python zip()函数用法实例分析
2018/03/17 Python
django-rest-swagger对API接口注释的方法
2019/08/29 Python
Python with语句用法原理详解
2020/07/03 Python
css3实现超炫风车特效
2014/11/12 HTML / CSS
香港最大的洋酒零售连锁店:屈臣氏酒窖(Watson’s Wine)
2018/12/10 全球购物
考试没考好检讨书
2014/01/31 职场文书
广告创意求职信
2014/03/17 职场文书
社团活动总结怎么写
2014/06/30 职场文书
公司慰问信范文
2015/03/23 职场文书
2019西餐厅创业计划书范文!
2019/07/12 职场文书
个人房屋租赁合同(标准范本)
2019/09/16 职场文书
解决 redis 无法远程连接
2022/05/15 Redis
MySQL详解进行JDBC编程与增删改查方法
2022/06/16 MySQL
mysql幻读详解实例以及解决办法
2022/06/16 MySQL