基于Node.js和ws库搭建WebSocket服务并实现消息互通的简单示例

基于Node.js和ws库搭建WebSocket服务并实现消息互通的简单示例

码农世界 2024-06-17 后端 89 次浏览 0个评论

环境要求:

  • Node.js环境安装
  • npm(Node.js的包管理器)

    步骤:

    1. 安装Node.js:如果你还没有安装Node.js,请从Node.js官网下载并安装。

    2. 创建项目:创建一个新的目录作为项目文件夹,并在该目录下初始化一个新的Node.js项目。

            mkdir my-websocket-server

            cd my-websocket-server

            npm init -y

        3. 安装WebSocket库:使用npm来安装ws库。

            npm install ws
        4. 创建WebSocket服务端:在项目目录中创建一个名为server.js的文件,并添加以下代码:

    const WebSocket = require('ws');

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

    wss.on('connection', function connection(ws) {

      ws.on('message', function incoming(message) {

        console.log('received: %s', message);

        // 广播消息到所有客户端

        wss.clients.forEach(function each(client) {

          if (client !== ws && client.readyState === WebSocket.OPEN) {

            client.send(message);

          }

        });

      });

      ws.send('你已连接到WebSocket服务器');

    });

    console.log('WebSocket服务正在监听8080端口...');

    这段代码创建了一个监听8080端口的WebSocket服务器。服务器会接收客户端发送的消息,并将它广播给所有其他已连接的客户端。

    5. 运行WebSocket服务端:在终端中运行服务端代码 

    node server.js

    6. 创建WebSocket客户端:

    可以使用任何支持WebSocket的客户端来连接这个服务器。这里我们以浏览器为例,创建一个简单的HTML页面作为客户端。

    在项目目录中创建一个名为client.html的文件,并添加以下代码:

     

    这个HTML页面会在打开时尝试连接到WebSocket服务器,并在连接成功后发送一条消息。它还能够接收并显示从服务器收到的消息。

    7. 打开客户端页面:

    使用浏览器打开client.html文件,你应该能在控制台中看到与WebSocket服务器的交互过程。

转载请注明来自码农世界,本文标题:《基于Node.js和ws库搭建WebSocket服务并实现消息互通的简单示例》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,89人围观)参与讨论

还没有评论,来说两句吧...

Top