node.js ws模块搭建websocket服务端的方法示例


Posted in Javascript onApril 25, 2019

首先下载websocket模块,命令行输入

npm install ws

node.js的 模块ws,可用于创建websocket服务,基本的express 和 http模块的使用

var express = require('express');
var http = require('http');
var WebSocket = require('ws');
var app = express();
var server = http.createServer(app);
var wss = new WebSocket.Server({server});

创建好服务之后,websocket 服务通过监听 message事件获取来自客户端的数据,然后我们可以给客户端发送一些消息。

wss.on('connection', function connection(ws) {
  console.log('连接成功!')
  ws.on('message', function incoming(data) {
    wss.clients.forEach(function each(client) {
      client.send('do you love me?');
    });
  });
});

搭建的服务我选择监听3000端口,

server.listen(3000, function listening() {
  console.log('服务器启动成功!');
});

最后客户端就简单了,web API 用于创建连接: new web(socket);

var socket = `ws://localhost:3000`;
var websocket = new WebSocket(socket);

关于WebSocket的详细操作,可前往w3c查看:webSocket

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 面向对象的JavaScript类
May 04 Javascript
使用JS进行目录上传(相当于批量上传)
Dec 05 Javascript
IE的事件传递-event.cancelBubble示例介绍
Jan 12 Javascript
jQuery中ajax的get()方法用法实例
Dec 26 Javascript
Vue.js每天必学之方法与事件处理器
Sep 06 Javascript
Bootstrap table的使用方法
Nov 02 Javascript
JS二分查找算法详解
Nov 01 Javascript
解决vue-cli创建项目的loader问题
Mar 13 Javascript
详解vue.js下引入百度地图jsApi的两种方法
Jul 27 Javascript
在Vant的基础上实现添加表单验证框架的方法示例
Dec 05 Javascript
详解项目升级到vue-cli3的正确姿势
Jan 28 Javascript
Vue指令实现OutClick的示例
Nov 16 Javascript
JS实现指定区域的全屏显示功能示例
Apr 25 #Javascript
使用React手写一个对话框或模态框的方法示例
Apr 25 #Javascript
elementUI Tree 树形控件的官方使用文档
Apr 25 #Javascript
微信小程序Flex布局用法深入浅出分析
Apr 25 #Javascript
详解如何实现Element树形控件Tree在懒加载模式下的动态更新
Apr 25 #Javascript
小程序开发踩坑:页面窗口定位(相对于浏览器定位)(推荐)
Apr 25 #Javascript
微信小程序整合使用富文本编辑器的方法详解
Apr 25 #Javascript
You might like
PHP有序表查找之插值查找算法示例
2018/02/10 PHP
js setattribute批量设置css样式
2009/11/26 Javascript
查询绑定数据岛的表格中的文本并修改显示方式的js代码
2009/12/15 Javascript
jQuery图片滚动图片的效果(另类实现)
2013/06/02 Javascript
jquery简单实现滚动条下拉DIV固定在头部不动
2013/11/25 Javascript
解析Javascript中中括号“[]”的多义性
2013/12/03 Javascript
浅谈类似于(function(){}).call()的js语句
2015/03/30 Javascript
javascript中错误使用var造成undefined
2016/03/31 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
2016/06/12 Javascript
手机移动端实现 jquery和HTML5 Canvas的幸运大奖盘特效
2016/12/06 Javascript
Jquery根据浏览器窗口改变调整大小的方法
2017/02/07 Javascript
Vue.js组件通信的几种姿势
2017/10/23 Javascript
vue父组件向子组件(props)传递数据的方法
2018/01/02 Javascript
vue打包使用Nginx代理解决跨域问题
2018/08/27 Javascript
解决JavaScript中0.1+0.2不等于0.3问题
2018/10/23 Javascript
详解如何用typescript开发koa2的二三事
2018/11/13 Javascript
Layui数据表格跳转到指定页的实现方法
2019/09/05 Javascript
Vue解析带html标签的字符串为dom的实例
2019/11/13 Javascript
[01:23:59]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 VP vs Secret
2018/04/03 DOTA
python基于multiprocessing的多进程创建方法
2015/06/04 Python
python+matplotlib实现动态绘制图片实例代码(交互式绘图)
2018/01/20 Python
Flask框架配置与调试操作示例
2018/07/23 Python
Python实现多进程的四种方式
2019/02/22 Python
对django的User模型和四种扩展/重写方法小结
2019/08/17 Python
django drf框架自带的路由及最简化的视图
2019/09/10 Python
使用Python实现牛顿法求极值
2020/02/10 Python
Spring @Enable模块驱动原理及使用实例
2020/06/23 Python
全球最大的中文旅行网站:去哪儿网
2017/11/16 全球购物
洛杉矶生活休闲而精致的基础品牌:Mika Jaymes
2018/01/07 全球购物
关于VPN
2012/06/10 面试题
农村婚礼主持词
2014/03/13 职场文书
个人委托函范文
2015/01/29 职场文书
幼儿园园长个人总结
2015/03/02 职场文书
Vue接口封装的完整步骤记录
2021/05/14 Vue.js
浅谈mysql增加索引不生效的几种情况
2021/06/23 MySQL
实例详解Python的进程,线程和协程
2022/03/13 Python