当前位置: 首页 > news >正文

网站建设的要点无锡网站维护

网站建设的要点,无锡网站维护,jsp 数据库做网站,南京关键词seo公司集成websocket 本节我们介绍在如何在 express 中集成 websocket。 WebSocket 服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种。 准备工作 创建一个 express.js 项目&a…

集成websocket

本节我们介绍在如何在 express 中集成 websocket。

WebSocket 服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种。

准备工作

  • 创建一个 express.js 项目(本文基于evp-express-cli)
  • 安装ws.js:(本教程使用更通用的ws.js,有兴趣的同学可以去了解express-ws.js)
npm i ws

创建代理

正常的项目都是分层的,为了避免循环依赖,本文采用代理类构造单例的方式来创建websocket服务器。

wsProxy.js:
在构造器内创建websocket服务器,并监听个别事件,最后把服务器赋给server成员变量。再定义一个静态的获取实例方法,调用时实例若为空,就构建实例:

const {WebSocketServer} = require('ws');class WebsocketProxy {/**@type {WebsocketProxy} */static INSTANCE;server;constructor() {const _server = new WebSocketServer({server: require('./server')})this.server = _server;_server.on("listening", () => {console.log(`websocket server is listening.`);})_server.on("connection", (ws) => {console.log(`websocket client connection`);ws.send(`Hello, I'm WebSocket server.`);ws.on("message", (message) => {ws.send(`${message}`);})})}static instance() {if(!WebsocketProxy.INSTANCE) {WebsocketProxy.INSTANCE = new WebsocketProxy();}return WebsocketProxy.INSTANCE;}
}function init() {return WebsocketProxy.instance();
}module.exports = {init
};

最后把服务器导出来:

async function init() {return RedisProxy.instance();
}module.exports = {init,instance: RedisProxy.instance(),
};

然后在任意其它地方调用 wsProxy.instance 即可获取单例,在从单例中获取server即可主动操作websocket.

const WsProxy = require('../utils/wsProxy');
const wsProxy = WsProxy.instance;
const wsServer = wsProxy.server;

你可以自己手动配置一遍,也可以使用evp-express-cli作为手脚架创建项目并选择websocket模板。

关于 ws.js 的详细用法请见官方文档: https://www.npmjs.com/package/ws

下一节-集成SocketIO

http://www.yayakq.cn/news/332685/

相关文章:

  • 南浔城乡建设局网站php做商城网站步骤
  • 深圳专业网站制作多少钱免费虚拟主机网站源码
  • 网站如何做搜索引擎优化做啥网站赚钱
  • 哈巴河网站制作网站开发颜色
  • 嘉定网站建设上海如何批量建站
  • 阅读网站源码免费咨询律师平台
  • 如何在淘宝上做自己的网站购物网站建设费用
  • 贵州交通建设集团网站网页传奇霸主高手攻略
  • 网站快速排名技术126企业邮箱注册
  • 建设网站公司地址网站空间控制面板软件
  • 长沙销售公司 网站遵义城乡和住房建设厅网站
  • 桐城市美好乡村建设办公室网站高质量外链购买
  • 山东建设发展研究院网站江阴规划建设局网站
  • 常州市网站建设设计wordpress开发主题时间
  • 在dw上做网站首页导航栏如何注册网址
  • 高端网站设计推广v信haotg8重庆公司名称网上核名
  • 网站的公告轮播效果怎么做百度搜索量排名
  • 专业网站优化软件程序员自己做项目网站
  • 专业微网站建设衡阳网站优化公司
  • 网站建设中服务器的搭建方式网站建设一般需要什么软件
  • 企业网站模板下载哪里好响应式网站开发有哪些框架
  • 做经营网站怎么赚钱吗12580黄页推广
  • 个人可以做几个网站网站服务器购买
  • 西安网络科技有限公司做网站优化哪家好
  • 主营商城网站建设东莞网站建设服务公司
  • 给个网站谢谢了怎么理解网站开发
  • 设计有什么网站推荐百度明星人气榜
  • 企业做网站公司有哪些网站开发费用报价表
  • 网站建设运营费计入什么科目大型app定制开发
  • 网站开发语言开发一般建设网站的常见问题