基于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 相关文章推荐
纯CSS3实现质感细腻丝滑按钮
Mar 09 HTML / CSS
HTML5时代CSS设置漂亮字体取代图片
Sep 04 HTML / CSS
css3 border旋转时的动画应用
Jan 22 HTML / CSS
CSS3过渡transition效果实例介绍
May 03 HTML / CSS
深入浅析CSS3中的Flex布局整理
Apr 27 HTML / CSS
HTML5之HTML元素扩展(下)—增强的Form表单元素值得关注
Jan 31 HTML / CSS
HTML5标签与HTML4标签的区别示例介绍
Jul 18 HTML / CSS
不可轻视HTML5!App三年内将被html5顶替彻底消失
Nov 18 HTML / CSS
Html5 web本地存储实例详解
Jul 28 HTML / CSS
HTML5地理定位_动力节点Java学院整理
Jul 12 HTML / CSS
HTML5中在title标题标签里设置小图标的方法
Jun 23 HTML / CSS
canvas实现图片镜像翻转的2种方式
Jul 22 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
便携利器 — TECSUN PL-365简评
2021/03/02 无线电
10个实用的PHP代码片段
2011/09/02 PHP
php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
2011/10/29 PHP
php生成图片验证码-附五种验证码
2015/08/19 PHP
使用ThinkPHP生成缩略图及显示
2017/04/27 PHP
javascript中巧用“闭包”实现程序的暂停执行功能
2007/04/04 Javascript
Javascript模板技术
2007/04/27 Javascript
一些常用的JS功能函数代码
2009/06/23 Javascript
Bootstrap每天必学之弹出框(Popover)插件
2016/04/25 Javascript
javaScript事件机制兼容【详细整理】
2016/07/23 Javascript
JS实现的相册图片左右滚动完整实例
2016/11/23 Javascript
用move.js库实现百叶窗特效
2017/02/08 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
iscroll-probe实现下拉刷新和下拉加载效果
2017/06/28 Javascript
Angular Excel 导入与导出的实现代码
2019/04/17 Javascript
小程序实现搜索界面 小程序实现推荐搜索列表效果
2019/05/18 Javascript
vue store之状态管理模式的详细介绍
2019/06/13 Javascript
微信小程序canvas开发水果老虎机的思路详解
2020/02/07 Javascript
[01:46]TI4西雅图DOTA2前线报道 中国选手抱团调时差
2014/07/08 DOTA
c++生成dll使用python调用dll的方法
2014/01/20 Python
在Windows8上的搭建Python和Django环境
2014/07/03 Python
Python全局变量操作详解
2015/04/14 Python
python插入数据到列表的方法
2015/04/30 Python
Swift中的协议(protocol)学习教程
2016/07/08 Python
Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录
2018/09/13 Python
在python中利用GDAL对tif文件进行读写的方法
2018/11/29 Python
Python绘图Matplotlib之坐标轴及刻度总结
2019/06/28 Python
python3中的eval和exec的区别与联系
2019/10/10 Python
python异常处理try except过程解析
2020/02/03 Python
python列表删除和多重循环退出原理详解
2020/03/26 Python
pycharm 激活码及使用方式的详细教程
2020/05/12 Python
HTML5 canvas基本绘图之绘制五角星
2016/06/27 HTML / CSS
创造美妙香氛体验:Aera扩散器和香水
2018/11/25 全球购物
JAVA程序员面试题
2012/10/03 面试题
mysql查询的控制语句图文详解
2021/04/11 MySQL
如何利用pygame实现打飞机小游戏
2021/05/30 Python