21xrx.com
2024-09-20 00:57:51 Friday
登录
文章检索 我的文章 写文章
使用Node.js搭建WebSocket的教程
2023-07-05 01:11:15 深夜i     --     --
Node js WebSocket 搭建教程 服务端实现 客户端实现

WebSocket是一种网络协议,能够实现客户端和服务器之间双向的实时通信。使用WebSocket可以克服传统HTTP协议的限制,能够实现更加快速和高效的通信。本教程将介绍使用Node.js搭建WebSocket实现双向通信的方法。

1. 安装Node.js

要使用Node.js搭建WebSocket,首先需要在电脑上安装Node.js。可以在Node.js官网(https://nodejs.org/)上下载适合自己系统的安装包进行安装。安装完成后,在命令行中输入“node -v”查看是否安装成功。

2. 安装ws模块

使用Node.js搭建WebSocket需要使用一个ws模块,可以通过npm命令进行安装。

在命令行中输入以下命令:


npm install ws

完成后,ws模块就安装好了。

3. 创建WebSocket服务器

创建一个server.js文件,输入以下内容:


const WebSocket = require('ws');

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

server.on('connection', (socket) => {

  console.log('A new client connected');

  socket.on('message', (message) => {

    console.log(`Received message: ${message}`);

    socket.send('Message received');

  });

  socket.on('close', (code, reason) => {

    console.log(`Client disconnected with code ${code} and reason ${reason}`);

  });

});

这段代码创建了一个WebSocket服务器,并对每个连接进行回调处理。当客户端连接时,服务器会输出一个日志。当客户端发送消息时,服务器会输出接受到的消息,并返回一个“Message received”的确认消息。当客户端断开连接时,服务器会输出客户端的断开原因。

4. 运行WebSocket服务器

在命令行中输入以下命令启动WebSocket服务器:


node server.js

运行后,WebSocket服务器就启动了。

5. 客户端连接WebSocket服务器

为了连接WebSocket服务器,可以创建一个HTML文件,并使用JavaScript代码连接WebSocket服务器。创建一个index.html文件,输入以下内容:


<!DOCTYPE html>

<html>

 <head>

  <meta charset="UTF-8" />

  <title>WebSocket client</title>

 </head>

 <body>

  <script>

   const socket = new WebSocket('ws://localhost:8080');

   socket.onopen = () => {

    console.log('Connected to WebSocket server');

    socket.send('Hello, WebSocket server!');

   };

   socket.onmessage = (message) => {

    console.log(`Received message: ${message.data}`);

   };

   socket.onclose = (event) => {

    console.log(

     `WebSocket closed with code ${event.code} and reason ${event.reason}`

    );

   };

  </script>

 </body>

</html>

这段代码创建了一个WebSocket客户端,并连接到我们刚刚启动的WebSocket服务器。当客户端连接成功时,会输出一个日志,并发送一个“Hello, WebSocket server!”的消息。当服务器返回消息时,客户端会输出这个消息。当客户端断开连接时,会输出客户端的断开原因。

6. 在浏览器中打开HTML文件

使用浏览器打开index.html文件,可以在浏览器控制台中看到WebSocket客户端发送和接受消息的日志。此时,WebSocket客户端已经连接成功,可以向WebSocket服务器发送和接收消息。

至此,使用Node.js搭建WebSocket的教程就结束了。在实际开发中,可以根据业务需求对WebSocket服务器和客户端进行优化和拓展。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复