💡
原文中文,约2100字,阅读约需5分钟。
📝
内容提要
Server-Sent Events(SSE)是一种通过HTTP连接向客户端主动发送数据的技术,适用于实时应用。SSE使用简单的文本格式,支持单向长连接,并需通过心跳消息防止连接中断。消息体包含四个字段,其中data为必需字段。重连时需携带最后消息的ID,心跳消息格式为“: :heartbeat”。SSE适合单向通信,客户端需解析消息体。
🎯
关键要点
- Server-Sent Events(SSE)是一种通过HTTP连接主动向客户端发送数据的技术,适用于实时应用。
- SSE使用简单的文本格式发送消息,支持单向长连接,并需通过心跳消息防止连接中断。
- 消息体包含四个字段:data(必需)、event、id和retry,其中data是必须字段。
- 重连时需携带最后消息的ID,以保持服务的连续性。
- 心跳消息格式为': :heartbeat',用于保持HTTP TCP连接不被关闭。
- SSE支持自定义消息类型,默认消息类型为message。
- 解析消息体时需遵循固定的规律,通过分割和解析获得消息内容。
- 客户端需解析消息体,若消息体不符合约定则应抛弃。
❓
延伸问答
什么是Server-Sent Events(SSE)?
Server-Sent Events(SSE)是一种通过HTTP连接主动向客户端发送数据的技术,适用于实时应用。
SSE的消息体包含哪些字段?
SSE的消息体包含四个字段:data(必需)、event、id和retry,其中data是必须字段。
如何保持SSE连接不被中断?
通过发送心跳消息来保持SSE连接不被中断,心跳消息格式为': :heartbeat'。
SSE如何处理重连?
在重连时,客户端需携带最后一次收到的消息的ID,以保持服务的连续性。
SSE支持哪些消息类型?
SSE支持自定义消息类型,默认消息类型为message。
客户端如何解析SSE消息体?
客户端需遵循固定的规律,通过分割和解析获得消息内容,若消息体不符合约定则应抛弃。
➡️