基于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实现圆角效果(含IE兼容解决方法)
May 07 HTML / CSS
CSS 说明横向进度条最后显示文字的实现代码
Nov 10 HTML / CSS
5分钟弄清楚html5的drag and drop(小结)
Apr 10 HTML / CSS
HTML5 Canvas 起步(1) - 基本概念
May 12 HTML / CSS
基于HTML5 FileSystem API的使用介绍
Apr 24 HTML / CSS
HTML中使用SVG与SVG预定义形状元素介绍
Jun 28 HTML / CSS
h5实现获取用户地理定位的实例代码
Jul 17 HTML / CSS
html5中audio支持音频格式的解决方法
Aug 24 HTML / CSS
Html5 canvas画图白板踩坑
Jun 01 HTML / CSS
关于html选择框创建占位符的问题
Jun 09 HTML / CSS
sass 常用备忘案例详解
Sep 15 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模板引擎smarty生成随机数的方法和math函数详解
2014/04/24 PHP
PHP PDOStatement::fetchObject讲解
2019/02/01 PHP
【消息提示组件】,兼容IE6/7&amp;&amp;FF2
2007/09/04 Javascript
JS跨域代码片段
2012/08/30 Javascript
js变换显示图片的实例
2013/04/16 Javascript
js控制表单奇偶行样式的简单方法
2013/07/31 Javascript
jQuery中[attribute!=value]选择器用法实例
2014/12/31 Javascript
JavaScript实现的简单拖拽效果
2015/06/01 Javascript
基于jquery实现全屏滚动效果
2015/11/26 Javascript
BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
2016/12/28 Javascript
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
2017/06/09 Javascript
关于react-router的几种配置方式详解
2017/07/24 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
Python爬虫代理IP池实现方法
2017/01/05 Python
python 简单搭建阻塞式单进程,多进程,多线程服务的实例
2017/11/01 Python
matlab中实现矩阵删除一行或一列的方法
2018/04/04 Python
Python while循环使用else语句代码实例
2020/02/07 Python
Python安装依赖(包)模块方法详解
2020/02/14 Python
详解python的变量缓存机制
2021/01/24 Python
Marlies Dekkers内衣法国官方网上商店:国际知名的荷兰内衣品牌
2019/03/18 全球购物
eDreams葡萄牙:全球最大的在线旅行社之一
2019/04/15 全球购物
广州地球村科技数据库题目
2016/04/25 面试题
实习单位接收函
2014/01/11 职场文书
金融管理专业毕业生求职信
2014/03/12 职场文书
工程管理英文求职信
2014/03/18 职场文书
就业协议书的作用
2014/04/11 职场文书
《云房子》教学反思
2014/04/20 职场文书
银行会计主管岗位职责
2014/10/01 职场文书
就业协议书范本
2014/10/08 职场文书
小升初自荐信怎么写
2015/03/26 职场文书
公司晚宴祝酒词
2015/08/11 职场文书
高中政治教师教学反思
2016/02/23 职场文书
Golang使用Panic与Recover进行错误捕获
2022/03/22 Golang
springboot应用服务启动事件的监听实现
2022/04/06 Java/Android
Typescript类型系统FLOW静态检查基本规范
2022/05/25 Javascript