当前位置: 首页 > news >正文

uniapp原生插件 TCP Socket 利用文档

uniapp原生插件 TCP Socket 利用文档

uniapp原生插件 TCP Socket 使用文档

试了插件市场几个TCP Socket插件都不能实现监听服务器主动断开,于是闲来无事就开发了一款,本插件是一个基于 Netty 实现的 TCP 通信模块,用于在 UniApp 插件中提供 TCP 连接、数据发送和连接管理功能。以下是模块的详细使用说明。


在这里插入图片描述
在这里插入图片描述


功能概述

  1. 打开 TCP 连接:通过指定的主机地址和端口号建立 TCP 连接。
  2. 发送数据:向已建立的 TCP 连接发送数据。
  3. 关闭 TCP 连接:断开当前的 TCP 连接并释放资源。
  4. 检查连接状态:查询当前 TCP 连接的状态。
  5. 设置连接状态:手动设置连接状态(内部使用)。

方法说明

1. 打开 TCP 连接

openTcp(params, callback)
  • 参数

    • params (Object): 包含以下键值对:
    • host (String): 目标主机地址,例如 "127.0.0.1"
    • port (Integer/Double): 目标端口号,例如 8080
    • callback (Function): 回调函数,返回操作结果。
  • 回调返回值

    • code (Number): 状态码,1 表示成功,0 表示失败。
    • msg (String): 操作结果描述信息。
    • type (String): 操作类型,固定为 "CONNECTION_OPENED"
  • 示例

    tcpSocket.openTcp({
    host: "127.0.0.1",
    port: 8080
    }, (res) =>
    {
    console.log(res);
    });

2. 发送数据

sendData(params, callback)
  • 参数

    • params (Object): 包含以下键值对:
      • data (String): 要发送的数据内容。
      • callback (Function): 回调函数,返回操作结果。
  • 回调返回值

    • code (Number): 状态码,1 表示成功,0 表示失败。
    • msg (String): 操作结果描述信息。
    • data (String): 发送的数据内容(仅在成功时返回)。
    • type (String): 操作类型,固定为 "DATA_SENT"
  • 示例

    tcpSocket.sendData({
    data: "Hello, TCP!"
    }, (res) =>
    {
    console.log(res);
    });

3. 关闭 TCP 连接

closeTcp(callback)
  • 参数

    • callback (Function): 回调函数,返回操作结果。
  • 回调返回值

    • code (Number): 状态码,1 表示成功,0 表示失败。
    • msg (String): 操作结果描述信息。
    • type (String): 操作类型,固定为 "CONNECTION_CLOSED"
  • 示例

    tcpSocket.closeTcp((res) =>
    {
    console.log(res);
    });

4. 检查 TCP 连接状态

isTcpConnected(callback)
  • 参数

    • callback (Function): 回调函数,返回操作结果。
  • 回调返回值

    • code (Number): 状态码,1 表示成功,0 表示失败。
    • msg (String): 操作结果描述信息。
    • connected (Boolean): 当前连接状态,true 表示已连接,false 表示未连接。
    • type (String): 操作类型,固定为 "STATUS_CHECKED"
  • 示例

    tcpSocket.isTcpConnected((res) =>
    {
    console.log(res.connected);
    // true 或 false
    });

注意事项

  1. 异常处理

    • 如果发生异常,所有方法都会通过回调返回错误信息,请确保正确处理异常情况。
  2. 字符编码

    • 数据传输默认使用 GBK 编码,确保发送和接收方的编码一致。
  3. 资源释放

    • 在不再需要 TCP 连接时,务必调用closeTcp方法以释放资源。

示例代码

以下是一个完整的使用示例:

// 打开 TCP 连接
tcpSocket.openTcp({
host: "127.0.0.1",
port: 8080
}, (res) =>
{
if (res.code === 1) {
console.log("TCP 连接已建立");
// 发送数据
tcpSocket.sendData({
data: "Hello, TCP!"
}, (sendRes) =>
{
if (sendRes.code === 1) {
console.log("数据发送成功");
} else {
console.error("数据发送失败:", sendRes.msg);
}
// 关闭 TCP 连接
tcpSocket.closeTcp((closeRes) =>
{
console.log(closeRes.msg);
});
});
} else {
console.error("无法建立 TCP 连接:", res.msg);
}
});

以上是 tcpSocket 模块的完整使用文档。如有其他问题,请参考源码或联系开发者。

http://www.wxhsa.cn/company.asp?id=2764

相关文章:

  • 【PyQt5】实现输入延迟响应:3秒无输入后自动读取内容
  • 线性代数基础
  • 微积分基础
  • Windows 自带的SSH中配置X11
  • 在Kubernetes client-go库中如何有效构建CRD的informer
  • Metasploit Framework 6.4.88 (macOS, Linux, Windows) - 开源渗透测试框架
  • The 2025 ICPC Asia East Continent Online Contest (I)
  • Linux中UDP网络通信机制编程探索
  • 中大型水闸安全监测的重要性及实施方法 - 指南
  • 如何通过LangChain实现记忆功能的总结
  • python 轻量级别的网页包Streamlit
  • 完整教程:技术小白如何快速的了解opentenbase?--把握四大特色
  • 9.13日模考总结
  • 高斯消元
  • wpf-MVVM+IOC/ID
  • uni-app iOS 性能监控全流程 多器具协作的实战优化指南
  • 矩阵快速幂
  • 使用 C# 设置 Excel 单元格格式 - 教程
  • grafana部署并使用harbor监控模板
  • 【ARM Cache 及 MMU 系列文章 6.1 -- Cache maintenance 指令及相关寄存器有哪些?】
  • 十八、CPU的控制流:正常控制流和异常控制流
  • 大模型基础|位置编码|RoPE|ALiBi
  • 成品app直播源码搭建,sql优化原则 - 云豹科技
  • 使用Clang静态分析技术追踪Heartbleed漏洞
  • 每日Java并发面试系列(5):基础篇(线程池的核心原理是什么、线程池大小设置为多少更合适、线程池哪几种类型?ThreadLocal为什么会导致内存泄漏?) - 实践
  • 累死你的不是工作,而是工作方式
  • 川土微CA-IF1051S、CA-IF1051VS 支持CAN FD
  • 模仿玩家习惯的简单AI系统:GoCap
  • 浅谈马拉车
  • 十七、异常和中断响应过程的时序图