Skip to content

信道服务

miusuncle edited this page Nov 3, 2016 · 8 revisions

微信小程序提供了 WebSocket 的通信能力,结合解决方案提供的信道服务,开发者可以迅速拥有实时双工的 WebSocket 通信能力。

信道服务共有三个模块参与协作进行通信:微信小程序客户端(需使用客户端增强 SDK)、业务服务器(需使用服务端 SDK)及信道服务器(以 PaaS 服务的形式提供)。

信道服务通信大致有四个流程,分别是:建立连接、心跳检测、消息推送及断开连接。

建立连接

建立连接是通信的第一步。

建立连接包含两部分:

  • 微信小程序客户端和信道服务器之间建立 TCP 双工链路
  • 信道服务器记录消息推送和断开连接应通知的业务服务器地址

心跳检测

建立连接后,微信小程序客户端和信道服务器间断地发送 Ping/Pong 包进行心跳同步。

消息推送

建立连接后,微信小程序客户端和信道服务器可以相互推送消息。由于信道服务器只作为通用的 PaaS 服务,其本身不对消息做处理,只是作为消息推送的搬运工,具体消息交由业务服务器处理。

信道服务目前只支持字符串消息推送

断开连接

当连接断开或微信小程序客户端请求断开时,信道服务器会向业务服务器推送断开消息。


以下是信道服务通信的时序图:

信道服务通信时序图