xMagic- 仓湖云函数数字应用平台
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
  1. xScript - x16.25.11
  • xMagic - 仓湖云函数数字应用平台
  • xScript - 仓湖云函数数字应用引擎
  • xMagic - 二开应用场景案例
  • 数据应用
    • 消息订阅(WSS)
    • 消息订阅(SSE)
    • 用户信息
    • 免密登陆(短信)
  • xScript - x16.25.11
    • assert
    • buffer
    • color
    • compress
    • console
    • crontab
    • crypto
    • encoding
    • events
    • evenloop
    • esm
    • fetch
    • fs
    • image
    • kv
    • mail
    • ml
    • mqtt
    • multipart
    • net
    • os
    • path
    • process
    • protobuf
    • querystring
    • redis
    • request
    • require
    • sql
    • tty
    • tui
    • ua
    • url
    • util
    • websocket
    • xml
    • yaml
    • mongo
    • http
    • stream
    • runtime
  • 小工具
    • APS - 代理转发
      • Any Proxy Service - 高级 HTTP/HTTPS/gRPC 代理转发工具
      • 配置指南 - 双向 Headers 和 Match/Replace
  • 数据模型
    • Schemas
      • AdminChangeAvatarReq
      • casbin.CasbinRule
      • AdminDelBatchReq
      • entity.DeptLable
      • AdminDelReq
      • entity.DevGenTable
      • AdminListReq
      • entity.DevGenTableColumn
      • AdminLoginReq
      • entity.FlowWorkClassify
      • AdminPostReq
      • entity.FlowWorkInfo
      • AdminReply
      • entity.FlowWorkTemplates
      • AdminUpdatePwdReq
      • entity.LogLogin
      • MenuDelBatchReq
      • entity.LogOper
      • MenuDelReq
      • entity.LoginM
      • MenuListReq
      • entity.MenuLable
      • MenuPostReq
      • entity.MenuPath
      • MenuReply
      • entity.ResEmail
      • RoleApisReq
      • entity.ResOss
      • SystemApiDelBatchReq
      • entity.ScreenGroupLabel
      • SystemApiDelReq
      • entity.SysApi
      • SystemApiListReq
      • entity.SysConfig
      • SystemApiPostReq
      • entity.SysDept
      • SystemApiReply
      • entity.SysDictData
      • SystemDepartmentDelBatchReq
      • entity.SysDictType
      • SystemDepartmentDelReq
      • entity.SysJob
      • SystemDepartmentListReq
      • entity.SysMenu
      • SystemDepartmentPostReq
      • entity.SysNotice
      • SystemDepartmentReply
      • entity.SysPost
      • SystemRoleApiDelBatchReq
      • entity.SysRole
      • SystemRoleApiDelReq
      • entity.SysTenants
      • SystemRoleApiListReq
      • entity.SysUser
      • SystemRoleApiPostReq
      • entity.SysUserB
      • SystemRoleApiReply
      • entity.SysUserId
      • SystemRoleDelBatchReq
      • entity.SysUserView
      • SystemRoleDelReq
      • entity.VisualRuleChain
      • SystemRoleListReq
      • entity.VisualScreen
      • SystemRoleMenuAddReq
      • entity.VisualScreenGroup
      • SystemRoleMenuDelBatchReq
      • form.Login
      • SystemRoleMenuDelReq
      • from.SendMail
      • SystemRoleMenuListReq
      • map[string]interface {}
      • SystemRoleMenuPostReq
      • map[string]string
      • SystemRoleMenuReply
      • model.BaseAutoModel
      • SystemRolePostReq
      • model.BaseModel
      • SystemRoleReply
      • model.ResultPage
      • model.ResultPage.data
      • vo.AuthVo
      • vo.DeptTreeVo
      • vo.MenuTreeVo
      • vo.MetaVo
      • vo.RouterVo
      • vo.TableInfoVo
      • vo.TokenVo
      • vo.UserRolePost
      • vo.UserVo
      • vo.UserVo.data
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
首页
🍓 函数引擎
更多产品
更多产品
  • 微澜组网
  1. xScript - x16.25.11

websocket

WebSocket 模块#

WebSocket客户端模块,提供双向实时通信功能,支持连接管理、消息发送和接收回调。

功能特性#

✅ WebSocket和WSS(安全WebSocket)支持
✅ 自动协议识别(ws://和wss://)
✅ 连接会话管理
✅ 消息接收回调
✅ 自动错误处理
✅ 灵活的TLS配置
✅ 支持二进制和文本消息

基本使用#

建立连接#

连接WSS(安全WebSocket)#

接收消息#

使用脚本处理消息#

message_handler.js 示例:

发送消息#

关闭连接#

API参考#

websocket.connect(name, url, callback)#

建立WebSocket连接并创建会话。
参数:
name (string, 必需): 会话名称,用于标识连接(必须唯一)
url (string, 必需): WebSocket服务器地址(ws://或wss://)
callback (function|string, 可选): 消息接收回调函数或脚本路径
返回值: string - 会话名称;如果连接失败返回null
回调函数签名:
示例:

websocket.send(name, message)#

通过指定会话发送消息。
参数:
name (string, 必需): 会话名称
message (string|Buffer, 必需): 要发送的消息内容
返回值: undefined - 成功发送或抛出错误
示例:

websocket.close(name)#

关闭指定会话的WebSocket连接。
参数:
name (string, 必需): 要关闭的会话名称
返回值: undefined
示例:

错误处理#

模块会自动处理连接错误和消息接收错误,错误信息会记录到日志中。

注意事项#

1.
会话名称唯一性:每个会话名称必须唯一,重复连接会返回现有会话。
2.
连接状态检查:发送消息前确保会话已连接,否则会出错。
3.
消息格式:服务器发送的二进制消息会以Buffer形式接收。
4.
回调执行:消息回调在独立的goroutine中执行,注意并发安全。
5.
TLS验证:WSS连接默认跳过证书验证(适合测试环境)。
6.
自动重连:模块不提供自动重连,需要手动实现。

实际应用场景#

实时聊天客户端#

实时数据监控#

心跳保活#

多会话管理#

性能优化建议#

1.
复用连接:避免频繁创建和销毁连接
2.
批量发送:将多个小消息合并发送
3.
异步处理:在回调中使用异步处理避免阻塞
4.
消息压缩:对大消息进行压缩后发送
5.
连接池:对于多个后端服务,使用连接池管理

调试技巧#

修改于 2025-11-03 13:13:00
上一页
util
下一页
xml
Built with