node.js: ws服务端和WebSocket客户端交互示例

简介: node.js: ws服务端和WebSocket客户端交互示例

文档

  • 服务端使用: ws: a Node.js WebSocket library
  • 客户端使用: WebSocket

服务端

安装依赖

pnpm i ws

修改 package.json

"type": "module",

server.js

import { WebSocketServer } from "ws";
const wss = new WebSocketServer({ port: 8080 });
wss.on("connection", function (ws) {
  // 接收消息 Buffer
  ws.on("message", function (data) {
    console.log(data);
    console.log("received: %s", data);
    // 返回消息
    ws.send(data.toString());
  });
  // 断开连接
  ws.on("close", function () {
    console.log("close");
  });
});

启动服务端

node server.js

客户端

index.html

<script>
    // 创建一个 WebSocket 连接
    const ws = new WebSocket('ws://localhost:8080');
    // 监听连接成功
    ws.addEventListener('open', function(){
        console.log('open');
        ws.send('Hello!')
    })
    // 监听返回的消息
    ws.addEventListener('message', function(event){
        console.log(event.data);
    })
    // 监听断开连接
    ws.addEventListener('close', function(event){
        console.log('断开连接');
    })
</script>
目录
打赏
0
0
0
0
58
分享
相关文章
webSocket+Node+Js实现在线聊天(包含所有代码)
文章介绍了如何使用WebSocket、Node.js和JavaScript实现在线聊天功能,包括完整的前端和后端代码示例。
386 0
Vue.js 与 WebSocket 的惊世联姻!实时数据通信的震撼变革,你敢错过?
【8月更文挑战第30天】在现代Web开发中,实时数据通信至关重要。Vue.js作为流行前端框架,结合WebSocket技术,实现了高效实时的数据交互。本文简要介绍了WebSocket原理及其在Vue.js项目中的应用方法,包括建立连接、监听事件及数据处理等步骤,展示了如何利用二者结合轻松应对实时聊天、股票更新等多种场景,为开发者提供了实用指南。希望本文能帮助您更高效地实现Web应用的实时通信功能。
292 0
前端全栈之路Deno篇(五):如何快速创建 WebSocket 服务端应用 + 客户端应用 - 可能是2025最佳的Websocket全栈实时应用框架
本文介绍了如何使用Deno 2.0快速构建WebSocket全栈应用,包括服务端和客户端的创建。通过一个简单的代码示例,展示了Deno在WebSocket实现中的便捷与强大,无需额外依赖,即可轻松搭建具备基本功能的WebSocket应用。Deno 2.0被认为是最佳的WebSocket全栈应用JS运行时,适合全栈开发者学习和使用。
306 7
五子棋小游戏(JS+Node+Websocket)可分房间对战
本文介绍了通过JS、Node和WebSocket实现的五子棋游戏,支持多人在线对战和观战功能。
181 1
五子棋小游戏(JS+Node+Websocket)可分房间对战
Web实时通信的学习之旅:WebSocket入门指南及示例演示
Web实时通信的学习之旅:WebSocket入门指南及示例演示
617 0
Express.js与前端框架的集成:React、Vue和Angular的示例与技巧
本文介绍了如何将简洁灵活的Node.js后端框架Express.js与三大流行前端框架——React、Vue及Angular进行集成,以提升开发效率与代码可维护性。文中提供了详细的示例代码和实用技巧,展示了如何利用Express.js处理路由和静态文件服务,同时在React、Vue和Angular中构建用户界面,帮助开发者快速掌握前后端分离的开发方法,实现高效、灵活的Web应用构建。
200 3
Node.js 中的 WebSocket 底层实现
Node.js 中的 WebSocket 底层实现
134 0
前端JS按钮点击事件、跳出弹窗、遮罩的实战示例
本文提供了一个前端JS按钮点击事件、弹出式窗口和遮罩层的实战示例,包括HTML、CSS和JavaScript的具体实现代码,以及功能解析,演示了如何实现按钮点击后触发弹窗显示和遮罩层,并在2秒后自动关闭或点击遮罩层关闭弹窗的效果。
前端JS按钮点击事件、跳出弹窗、遮罩的实战示例
分享15 个 JavaScript 代码示例及其 Dart 对应代码。
本文对比了React/React Native中的JavaScript语法与Flutter中的Dart语法,帮助开发者快速上手Flutter。内容涵盖JSON处理、数组操作、类型转换、条件判断等常见功能,如`JSON.stringify`与`JsonEncoder().convert`,`array.push`与`list.add`,`parseInt`与`int.parse`等,并提供了15个JavaScript与Dart代码示例对照。这对于从JavaScript转向Dart的开发者尤其有用。
66 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等