ZBLOG

websocket 使用

WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,它提供了实时性和低延迟的通信方式。相比于传统的 HTTP 请求-响应模式,WebSocket 可以让服务器主动向客户端发送数据,而不需要等待客户端请求。这使得 WebSocket 适合实时聊天、在线游戏、股票行情等需要快速、稳定地传输数据的应用场景。

使用 WebSocket 需要以下步骤:

  1. 创建一个 WebSocket 对象,并指定连接的 URL。

  2. 监听 WebSocket 的事件,如 onopen、onmessage、onclose 和 onerror 等。

  3. 发送消息到服务器,可以使用 send() 方法。

  4. 关闭 WebSocket 连接,可以使用 close() 方法。

在服务端,则需要创建对应的 WebSocket 服务来处理客户端的连接和消息。常用的语言和框架有 Node.js 的 ws 模块、Java 的 javax.websocket 和 Spring WebSockets 等。

示例代码:

客户端:

var socket = new WebSocket("ws://localhost:8080/");

socket.onopen = function(event) {
  console.log("WebSocket connected!");
};

socket.onmessage = function(event) {
  console.log("Received message: " + event.data);
};

socket.onerror = function(event) {
  console.log("Error: " + event.data);
};

socket.onclose = function(event) {
  console.log("WebSocket closed.");
};

socket.send("Hello, server!");

socket.close();

服务端(使用 Node.js 的 ws 模块):

const WebSocket = require('ws');

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

wss.on('connection', function connection(ws) {
  console.log("WebSocket connected!");

  ws.on('message', function incoming(message) {
    console.log("Received message: " + message);
    ws.send("Hello, client!");
  });

  ws.on('error', function error(err) {
    console.log("Error: " + err);
  });

  ws.on('close', function close() {
    console.log("WebSocket closed.");
  });
});

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=3645

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?