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日

相关文章

  • JavaScript数组方法-系统性总结详解

    JavaScript数组方法-系统性总结详解 概述 数组(Array)是JavaScript中最常用、最重要的一种数据类型,而且在实际开发中,我们也经常需要对数组进行各种操作,比如查询、增加、删除、排序等等。JavaScript提供了很多数组方法,让我们能够方便快捷的对数组进行各种操作,使得开发变得更加高效。本篇文章旨在对JavaScript数组方法进行系统…

    JavaScript 2023年5月18日
    00
  • JavaScript中实现sprintf、printf函数

    在JavaScript中,有时候需要格式化字符串输出,针对此需求,可以使用sprintf、printf函数来实现。 sprintf函数的实现 sprintf函数的作用是将指定的格式化字符串输出到一个字符串中。JavaScript中没有原生实现sprintf函数的方法,但是可以通过自定义实现函数来达到此目的。 下面是一个使用sprintf函数实现字符串格式化输…

    JavaScript 2023年5月27日
    00
  • JavaScript数组常用方法实例讲解总结

    JavaScript数组常用方法实例讲解总结 本文将对 JavaScript 数组常用方法进行实例讲解总结,旨在帮助读者更加深入地了解 JavaScript 数组的使用。本文涉及的方法包括:push、pop、shift、unshift、slice、splice、concat、join、indexOf 和 sort。 push方法 push方法可以向数组的末尾…

    JavaScript 2023年5月27日
    00
  • jQuery右下角旋转环状菜单特效代码

    要实现“jQuery右下角旋转环状菜单特效”,需要按以下步骤进行操作: 1. 引入jQuery库文件和相关CSS文件 <!DOCTYPE html> <html> <head> <title>Right bottom rotating menu</title> <meta charset=&q…

    JavaScript 2023年6月11日
    00
  • 总结Node.js中的一些错误类型

    下面是关于总结Node.js中的一些错误类型的完整攻略: 错误类型 在Node.js使用过程中,我们会遇到多种错误类型,下面是一些常见的错误类型。 SyntaxError SyntaxError 是在JavaScript代码解析过程中发现的语法错误。通常,这种错误是因为代码中有一个或多个拼写错误或语法错误导致的。例如: if (mood === "…

    JavaScript 2023年5月28日
    00
  • javascript从image转换为base64位编码的String

    下面是JavaScript将Image转换为Base64位编码的字符串的完整攻略: 一、背景介绍 在JavaScript中,将图片转换为Base64编码的字符串可以非常方便地实现图片预加载、图片上传、图片存储等多种功能,而不必通过服务器进行处理。 二、步骤说明 创建一个Image对象 var img = new Image(); 指定Image对象的src属…

    JavaScript 2023年5月19日
    00
  • Javascript延迟执行实现方法(setTimeout)

    下面是关于Javascript延迟执行实现方法(setTimeout)的详细讲解。 简介 JavaScript中的setTimeout()方法是用于在一定时间后执行指定的函数或一段代码。常用于实现延迟执行、定时器等功能。 语法格式 setTimeout(function, milliseconds, arg1, arg2, …); function:必需…

    JavaScript 2023年5月27日
    00
  • JavaScript的parseInt 取整使用

    下面是关于JavaScript中parseInt方法的取整使用的完整攻略: 什么是 parseInt 方法 parseInt 方法是 JavaScript 内置的一个函数,用来将一个字符串转换成整数(Number)。 它的语法格式如下: parseInt(string, radix) 其中: string:需要转换成整数的字符串。 radix:可选,表示转换…

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