NodeJS多种创建WebSocket监听的方式(三种)

下面是NodeJS多种创建WebSocket监听的方式的完整攻略。

标准 WebSocket 创建方式

  1. 在 Node.js 中使用 WebSocket 的第一步是将其作为依赖项添加到您的项目中。您可以使用以下命令执行此操作:
npm install --save websocket
  1. 在您的项目代码中,您需要加载 WebSocket 模块。这可以通过以下代码行完成:
const WebSocket = require('websocket').server;
  1. 可以使用以下代码创建 WebSocket 服务器并将其绑定到具有“http”模块的 HTTP 服务器上:
const http = require('http');
const server = http.createServer((request, response) => {});

const wsServer = new WebSocket({
  httpServer: server
});
  1. 可以使用 wsServer 上的回调函数来处理 WebSocket 连接:
wsServer.on('request', (request) => {
  const connection = request.accept(null, request.origin);

  connection.on('message', (message) => {
    if (message.type === 'utf8') {
      console.log(`Received Message: ${message.utf8Data}`);
      connection.sendUTF(message.utf8Data);
    } else if (message.type === 'binary') {
      console.log(`Received Binary Message of ${message.binaryData.length} bytes`);
      connection.sendBytes(message.binaryData);
    }
  });

  connection.on('close', (reasonCode, description) => {
    console.log(`Peer ${connection.remoteAddress} disconnected.`);
  });
});

使用 Socket.IO 创建 WebSocket

  1. 使用以下命令将 Socket.IO 添加为项目依赖项:
npm install socket.io
  1. 下面是使用 Socket.IO 建立 WebSocket 并向客户端发送消息的代码示例:
const server = require('http').createServer();
const io = require('socket.io')(server);

io.on('connection', (socket) => {
  console.log('a user connected');

  socket.on('disconnect', () => {
    console.log('user disconnected');
  });

  socket.on('chat message', (msg) => {
    console.log(`message: ${msg}`);
    io.emit('chat message', msg);
  });
});

server.listen(3000, () => {
  console.log('listening on *:3000');
});

使用 ws 创建 WebSocket

  1. 使用以下命令将 ws 添加为项目依赖项:
npm install ws
  1. 下面是使用 ws 建立 WebSocket 并向客户端发送消息的代码示例:
const WebSocket = require('ws');

const wss = new WebSocket.Server({ port: 8080 });

wss.on('connection', (ws) => {
  ws.on('message', (message) => {
    console.log(`Received message => ${message}`);
    ws.send(`Hello, you sent => ${message}`);
  });
  ws.send('Hi there, I am a WebSocket server');
});

以上就是三种使用 Node.js 创建 WebSocket 的方式的完整攻略,其中包含了至少两个代码示例。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:NodeJS多种创建WebSocket监听的方式(三种) - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • php用正则表达式匹配中文实例详解

    下面我将详细讲解“php用正则表达式匹配中文实例详解”的完整攻略,包括以下几个方面: 正则表达式匹配中文的原理 常用的正则表达式匹配中文的方法 示例 1. 正则表达式匹配中文的原理 正则表达式是由一些字符和特殊字符组成的字符串,它可以用于对字符串进行模式匹配和查找等操作。在PHP中,可以使用正则表达式来匹配中文。 中文是Unicode字符集中的一种字符,其编…

    JavaScript 2023年5月19日
    00
  • vue实现微信浏览器左上角返回按钮拦截功能

    介绍:Vue可以通过使用路由导航守卫来拦截某些操作,其中之一就是拦截微信浏览器左上角的返回按钮。本攻略将详细介绍如何使用Vue及路由导航守卫实现微信浏览器左上角返回按钮的拦截功能。 步骤: 1.安装Vue Router 安装Vue Router是实现路由动态跳转的必要前提。使用npm或yarn,运行以下命令: npm install vue-router O…

    JavaScript 2023年6月11日
    00
  • 国外的为初学者写的JavaScript教程

    下面我将为您详细讲解如何学习“国外的为初学者写的JavaScript教程”。 一、寻找合适的教程网站 在寻找JavaScript教程网站时,您可以通过搜索引擎来寻找。以下是几个优秀的JavaScript教程网站,推荐大家参考: MDN Web 文档:MDN Web 文档是一个权威的Web技术文档网站。该网站的JavaScript教程适合初学者学习,并有逐步深…

    JavaScript 2023年6月10日
    00
  • 使用Node.js为其他程序编写扩展的基本方法

    使用 Node.js 为其他程序编写扩展的基本方法需要按照以下步骤进行: 步骤一:安装 Node.js 和 NPM 首先需要在本地计算机中安装 Node.js 和 NPM(NPM 是 Node.js 的软件包管理器)。通常可以在 Node.js 的官方网站上下载相应的安装包进行安装。 步骤二:编写扩展代码 为其他程序编写扩展的方法有多种,其中最常用的方法是使…

    JavaScript 2023年5月19日
    00
  • JavaScript数组的使用详解

    JavaScript数组的使用详解 JavaScript是一种广泛使用的编程语言,而数组是它最常用的数据类型之一。JavaScript数组可以存储一组有序的数据并进行一系列操作。本文将详细讲解JavaScript数组的使用方法和常见操作。 创建数组 直接量方式创建数组 可以使用直接量方式创建数组,直接在中括号[]中用逗号隔开每个元素。 示例: let arr…

    JavaScript 2023年5月18日
    00
  • UpdatePanel触发javascript脚本的方法附代码

    关于”UpdatePanel触发javascript脚本的方法”,我来详细讲解一下。 首先,我们需要了解一下UpdatePanel是什么。UpdatePanel在ASP.NET中是一个用来局部刷新页面的控件。当UpdatePanel中的内容需要更新时,ASP.NET会自动发送异步请求并更新指定部分的内容。而JavaScript脚本则是一种脚本语言,可以用来为…

    JavaScript 2023年6月10日
    00
  • javascript基于prototype实现类似OOP继承的方法

    首先,在JavaScript中,没有像其他面向对象编程语言(如Java和C#等)那样的类(class)机制。但是,JavaScript使用了原型(prototype)机制,来模拟面向对象的继承和多态性。 下面是基于原型实现JavaScript中的继承机制的完整攻略: 1.对象与原型 在JavaScript中,每个对象都有一个关联的原型对象,这个关联就是通过该…

    JavaScript 2023年6月11日
    00
  • Js获取当前日期时间及格式化代码

    下面是关于”Js获取当前日期时间及格式化代码”的完整攻略: 获取当前日期时间 在JavaScript中,我们可以使用new Date()来获取当前日期时间对象。 例如,以下代码段可以获取当前日期时间: const now = new Date(); 上述代码中,now就是当前的日期时间对象。 格式化当前日期时间 虽然new Date()可以让我们获取到当前日…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部