服务器端代码不超过42行:

const WSServer = require("./server.js");var counter = 0;function createWebsocket() {var host = "127.0.0.1";var port = "9999";var wsServer =  WSServer.startServer(host, port);console.log("WebSocket server listens to: " + host + ":" + port);wsServer.on('open', (data) => {console.log('WS Client has connected: ' + data);setInterval(function(){ counter++;WSServer.broadcast("Jerry: " + counter );}, 3000);});wsServer.on('dataWS', (data) => {console.log('Receive Data from WebUI : ' +  data);});wsServer.on('disconnect', (data) => {console.log('WSServer disconnect:' + data.name);});wsServer.on('close', (data) => {console.log('WSServer close: ' + data.name);});wsServer.on('end', (data) => {console.log('WSServer Close: '+data.name);});wsServer.on('error', (data) => {});
}createWebsocket();

代码第10行创建一个WebSocket服务器,监听在9999端口上:

第15~18行每隔3秒发送一个字符串到浏览器,用一个计数器标识每次发送的请求。

代码里所需的server.js我已经上传到我的Github上了:
https://github.com/i042416/KnowlegeRepository/blob/master/practice/nodejs/server.js

使用nodejs启动这个服务器:

网页端代码:

<html>
<script src="socket.io.dev.js">
</script>
<script>
console.log("1");var socket = io('ws://127.0.0.1:9999');socket.on('connect', function(){console.log("connected!");});socket.on('event', function(data){console.log("event: " + data);});socket.on('news', function(data){console.log("data from server: " + JSON.stringify(data,2,2));});socket.on('disconnect', function(){console.log("disconnect...");});</script>
</html>

浏览器端每隔三秒收到服务器推送的消息,打印在console上:

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

一个最简单的WebSocket hello world demo相关推荐

  1. Qt5.9一个简单的手写界面demo

    本文主要总结一个最简单的手写界面demo,具体代码如下. 1.1新建一个widget工程,不要勾选ui界面.然后分别在widget.h.widget.cpp.main.cpp分别添加如下代码. wid ...

  2. LWJGL入门指南:使用《我的世界》(Minecraft)同款游戏库开发一个超级“简单”的3D射击游戏

    LWJGL系列文章 LWJGL入门指南:序章 LWJGL入门指南:安装LWJGL或生成maven或gradle依赖与第一行LWJGL代码 LWJGL入门指南:一个超级简单的3D射击游戏demo 前言 ...

  3. Dubbo入门介绍---搭建一个最简单的Demo框架

    Dubbo入门---搭建一个最简单的Demo框架 置顶 2017年04月17日 19:10:44 是Guava不是瓜娃 阅读数:320947 标签: dubbo zookeeper 更多 个人分类: ...

  4. 使用SpringBoot搭建一个简单的webSocket服务

    前言 个人地址:使用SpringBoot搭建一个简单的webSocket服务 什么是WebSocket? WebSocket是一个HTML5新增的协议,它的目的在浏览器和服务器之间建立一个不受限的双向 ...

  5. 用 Go 编写一个简单的 WebSocket 推送服务

    用 Go 编写一个简单的 WebSocket 推送服务 本文中代码可以在 github.com/alfred-zhon- 获取. 背景 最近拿到需求要在网页上展示报警信息.以往报警信息都是通过短信,微 ...

  6. 如何用 Node.js 实现一个简单的 Websocket 服务?

    最近正在研究 Websocket 相关的知识,想着如何能自己实现 Websocket 协议.到网上搜罗了一番资料后用 Node.js 实现该协议,倒也没有想象中那么复杂,除去注释语句和 console ...

  7. 使用libwebsockets搭建一个简单的websocket服务器

    本文讲解如何开发一个简单的WebSocket服务器 如果你嫌这两个例子都太简单了,且想了解更多更深的websocket的工作原理, 可以看这篇文章:http://lucumr.pocoo.org/20 ...

  8. socket.io简单说明及在线抽奖demo

    socket.io简单说明及在线抽奖demo socket.io 简介 Socket.IO可以实现实时双向的基于事件的通信. 它适用于各种平台,浏览器或设备,也同样注重可靠性和速度. socket.i ...

  9. 初学redux笔记,及一个最简单的redux实例

    categories: 笔记 tags: react redux 前端框架 把初学redux的一些笔记写了下来 分享一个入学redux很合适的demo, 用redux实现计数器 这是从阮一峰老师git ...

最新文章

  1. 自监督学习(Self-Supervised Learning)多篇论文解读(上)
  2. Unity版本更新关注
  3. 万字长文,说透了 Openshift4 的安装过程!
  4. Java常用垃圾收集器
  5. Mini音乐播放器【简单版】(附源码)
  6. gdk_draw_arc这个函数
  7. case分支 shell函数 字符串的处理
  8. C++ class实现Huffman树(完整代码)
  9. P4180-[BJWC2010]严格次小生成树【Kruskal,倍增】
  10. 秀操作 | 函数宏的三种封装方式
  11. 【学习笔记】传输层:TCP协议(报文段、连接管理{握手}、可靠传输、流量控制、拥塞控制)
  12. 自定义委托,事件,参数的简单随笔
  13. 陈硕网络编程实战视频教程目录
  14. Spark RDD的运行机制 工作节点分布关系
  15. HMM:隐马尔科夫模型 - 学习
  16. 【VMware vSAN 7.0】4.8 有关 vSAN 许可证的注意事项—我们有软硬件解决方案
  17. 使用php监控系统运行状态、网站运行状态监控系统
  18. es 精确查找思路以及实现过程
  19. Elasticsearch Index Aliases详解
  20. Android针对IC卡读写的NFC开发

热门文章

  1. Webkit for android
  2. java.lang.OutOfMemoryError: Java heap space 解决方法
  3. Ruby on Rails:控制器纵览
  4. 代码生成工具随笔(3)---占领最后一块黄金宝地
  5. 让Tee 7.x版本和FastReport 3.x版本共存
  6. 文献记录(part17)--VARCLUST: clustering variables using dimensionality reduction
  7. Django从理论到实战(part1)--虚拟环境
  8. pyqt5能直接编译python吗_用PyInstaller打包用PyQt5编写的python程序
  9. SAP UI5 应用开发教程之十九 - SAP UI5 数据类型和复杂的数据绑定
  10. express.static 和 lit-html