使用 WebSocket 进行实时数据传输

以下是使用 WebSocket 进行实时数据传输的一般步骤:

一、前端部分

(一)创建 WebSocket 连接

复制代码
const socket = new WebSocket('ws://your-server-url'); 

在上述代码中,将 'ws://your-server-url' 替换为您实际的服务器 WebSocket 地址。

(二)处理连接打开事件

复制代码
socket.onopen = function(event) {
  console.log('连接已建立');
  // 在此处可以发送初始数据给服务器
  socket.send('Hello, Server!');
};

(三)处理接收数据事件

复制代码
socket.onmessage = function(event) {
  const data = event.data;
  console.log('接收到数据: ' data);
  // 对接收的数据进行处理和展示
};

(四)处理连接关闭事件

复制代码
socket.onclose = function(event) {
  if (event.wasClean) {
    console.log(`连接已关闭,代码: ${event.code},原因: ${event.reason}`);
  } else {
    // 例如连接意外中断
    console.log('连接中断'); 
  }
};

(五)处理错误事件

复制代码
socket.onerror = function(error) {
  console.error('发生错误: ' error.message);
};

二、后端部分(以 Node.js 为例)

(一)安装依赖

复制代码
npm install ws

(二)创建 WebSocket 服务器

复制代码
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('接收到客户端消息: %s', message);

    // 向客户端发送数据
    ws.send('Hello, Client!');
  });

  ws.on('close', function close() {
    console.log('客户端连接关闭');
  });
});

希望上述内容对您有所帮助,如果您在使用过程中遇到问题,欢迎随时提问。

相关推荐
上海合宙LuatOS1 小时前
LuatOS核心库API——【io】 io操作(扩展)
java·服务器·前端·网络·单片机·嵌入式硬件·物联网
她说彩礼65万2 小时前
I/O密集型 CPU密集型
网络
枷锁—sha3 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 048】详解:Ret2Libc 之 Puts 泄露
网络·安全·网络安全
初恋叫萱萱3 小时前
基于 Rust 与 DeepSeek V3.2 构建高性能插件化 LLM 应用框架深度解析
网络·人工智能·rust
专业开发者5 小时前
Wi-Fi 技术学习:面向 Wi-Fi 网络的抗干扰技术
网络·学习
瘾大侠5 小时前
WingData
网络·安全·web安全·网络安全
志栋智能5 小时前
自动化运维真的只能选复杂平台吗?
运维·网络·数据库·人工智能·自动化
AC赳赳老秦5 小时前
低代码AI化革命:DeepSeek引领智能开发新纪元
网络·人工智能·安全·web安全·低代码·prometheus·deepseek
月明长歌5 小时前
Java 网络编程套接字入门:从“发一段数据”到“写一个可并发的服务器”
java·服务器·网络
呉師傅5 小时前
【操作技巧】Win10关机提示这个应用阻止关机。怎么解决?
运维·网络·windows·电脑