Socket文档Socket文档
  • 连接Socket
  • 基础事件
  • 系统通知[SystemNoticeTips]
  • 朋友圈事件
  • 更多内容尽情期待
  • PC扫码事件
  • 连接Socket
  • 基础事件
  • 系统通知[SystemNoticeTips]
  • 朋友圈事件
  • 更多内容尽情期待
  • PC扫码事件
    • 连接Socket
    • 基础事件
    • 系统通知[SystemNoticeTips]
    • 朋友圈事件
    • 更多内容尽情期待
    • PC扫码事件

连接Socket

介绍

连接方式:

https://xxxx/websk?

加密方式

和请求接口的加密方式一样哦传送参数全部加密

公共参数

字段类型参数说明类型是否必填
event事件值stingtrue
prefix前缀,目前固定为Appstingtrue
platform平台,手机端填App,PC端填Pcstringtrue

连接登录

客户端请求数据

字段类型参数说明类型是否必填
event事件 Loginstringtrue
data具体参数 👇arraytrue
token当前用户的Tokenstringtrue

心跳包

客户端发心跳包数据

字段类型参数说明类型是否必填
event事件key值,vaule传pongstringtrue

客户端主动发起心跳, 建议20s发一次,格式为{"event":"pong"},请在登录成功后开始发送

服务端发心跳包数据 { "event": "ping", "message": "", "status": 200, }

通用错误码

返回示例

{
  "event": "",
  "message": "",
  "status": "",
  "data": {
  }
}
字段类型参数说明类型
event事件类型string
message中文说明string
status状态码int
data具体应答内容object/array

状态码含义

status返回值结果
status200成功状态
status500处理失败

重要提示

提示

请APP端做好自动重连机制,

一般来说重连随次数的增加;间隔时间变的越久,比如说第一次等待1s重连,第二次等待2s重连,第三次等待3s后重连,第N次后还是连接不起就不连了...

为什么要有间隔时间,因为可能是后台断开的,如果后台重启,没有间隔时间的话 请求全部过来,服务器遭不住!!!

做好主动发心跳包

断线重连(重要) 不管是客户端发送心跳还是服务端发送心跳,连接都有断开的可能。例如浏览器最小化js被暂停、浏览器切换到其它tab页面js被暂停、电脑进入睡眠等等、移动端切换网络、信号变弱、手机黑屏、手机应用切换到后台、路由故障、业务主动断开等。尤其是外网环境复杂,很多路由节点会清理1分钟内不活跃的连接,这也是为什么心跳间隔推荐小于1分钟的原因。

连接在外网环境很容易被断开,所以断线重连是长连接应用必须具备的功能(断线重连只能客户端做,服务端无法实现)。例如浏览器websocket需要监听onclose事件,当发生onclose时建立新的连接(为避免需崩可延建立连接)。更严格一点,服务端也应该定时发起心跳数据,并且客户端需要定时监测服务端的心跳数据是否超时,超过规定时间未收到服务端心跳数据应该认定连接已经断开,需要执行close关闭连接,并重新建立新的连接。

客户端主动发起心跳, 建议20s发一次,格式为{"event":"pong"}

Next
基础事件