6.3 SSE数据帧的格式
SSE必须编码成utf-8的格式,消息的每个字段使用"\n"来做分割,并且需要下面4个规范定义好的字段。
这4个字段是:
- 1)Event: 事件类型;
- 2)Data: 发送的数据;
- 3)ID: 每一条事件流的ID;
- 4)Retry: 告知浏览器在所有的连接丢失之后重新开启新的连接等待的时间,在自动重新连接的过程中,之前收到的最后一个事件流ID会被发送到服务端。
下图是通过wireshark抓包得到的数据包的原始格式:
6.4 SSE通信过程SSE的通信过程比较简单,底层的一些实现都被浏览器给封装好了,包括数据的处理。
大致流程如下:
在浏览器中截图如下:
携带的数据是JSON格式的,浏览器都帮你整合成为一个Object: