当前位置:   article > 正文

鸿蒙技术之WebSocket连接详解_鸿蒙java websocket

鸿蒙java websocket

WebSocket连接详解

WebSocket是一种在单个TCP连接上提供全双工通信信道的协议,它允许服务器主动向客户端推送数据,非常适合实时通信和数据交换频繁的应用场景。以下是WebSocket连接的详细步骤和知识点:

1. 创建WebSocket对象

首先,需要通过createWebSocket()方法创建一个WebSocket对象。

import { webSocket } from '@kit.NetworkKit';
import { BusinessError } from '@kit.BasicServicesKit';

let ws = webSocket.createWebSocket();
  • 1
  • 2
  • 3
  • 4
2. 连接到服务器

使用connect()方法连接到服务器。连接方式可以是直接连接,也可以通过设置请求头、代理等选项进行连接。

ws.connect(url, (err: BusinessError, value: boolean) => {
  if (!err) {
    console.log("connect success");
  } else {
    console.log("connect fail, err:" + JSON.stringify(err));
  }
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
3. 处理WebSocket事件

WebSocket对象提供了多个事件处理方法,包括:

  • on('open'): 当WebSocket连接成功打开时触发。
  • on('message'): 当接收到服务器发送的消息时触发。
  • on('close'): 当WebSocket连接关闭时触发。
  • on('error'): 当发生错误时触发。

示例代码如下:

ws.on('open', (err: BusinessError, value: Object) => {
  console.log("WebSocket is open now");
});

ws.on('message', (err: BusinessError, value: string | ArrayBuffer) => {
  console.log("Received message: " + value);
});

ws.on('close', (err: BusinessError, value: webSocket.CloseResult) => {
  console.log("WebSocket is closed, code: " + value.code + ", reason: " + value.reason);
});

ws.on('error', (err: BusinessError) => {
  console.log("Error occurred: " + JSON.stringify(err));
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
4. 发送数据

使用send()方法向服务器发送数据。

ws.send("Hello, server!", (err: BusinessError, value: boolean) => {
  if (!err) {
    console.log("Message sent successfully");
  } else {
    console.log("Failed to send message, error: " + JSON.stringify(err));
  }
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
5. 关闭WebSocket连接

使用close()方法关闭WebSocket连接。可以设置关闭时的错误码和原因。

ws.close((err: BusinessError, value: boolean) => {
  if (!err) {
    console.log("WebSocket closed successfully");
  } else {
    console.log("Failed to close WebSocket, error: " + JSON.stringify(err));
  }
});```

以上步骤和知识点涵盖了WebSocket连接的主要操作,包括连接的建立、数据的发送与接收、事件的处理以及连接的关闭。通过这些步骤,可以实现与服务器之间的双向通信。


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/963961
推荐阅读
相关标签
  

闽ICP备14008679号