优点:
-
简单易用:SSE只使用HTTP协议,不需要像WebSocket一样的握手协议,因此在客户端实现上非常简单,特别是对于浏览器,可以直接使用EventSource对象。
-
兼容性好:SSE使用的HTTP协议可以穿透大多数防火墙和代理,因此在网络中的兼容性更好。
-
适用于传输多个消息:SSE支持流式传输,可以传输多个消息。
缺点:
-
单向通信:SSE只支持服务器向客户端发送数据,客户端无法主动向服务器端发送消息。
-
无法实现实时双向通信:如果需要实现实时双向通信,需要使用长轮询或者短轮询的方式,而不是SSE。
-
不支持二进制传输:SSE只支持文本传输,不能直接传输二进制数据。