XMLHttpRequest, 可用于咋iuser agent 和服务器之间交换数据

Fetch API 是现代版, 更强大更灵活

服务器单向给客户端发送事件的API, EventSource

EventSource 接口用于接收服务器发送的事件。它通过HTTP连接到一个服务器,以text/event-stream 格式接收事件, 不关闭连接。

Server-Sent Events 的客户端 API 部署在EventSource 对象上

SSE 的本质, 就是服务器向客户端声明,接下来要发送的是流信息(streaming). 也就是说,发送的不是一次性的数据包,而是一个数据流,会连续不断地发送过来。这时,客户端不会关闭连接,会一直等着服务器发过来的新的数据流,视频播放就是这样的例子

只支持utf8编码,binary数据可以先base64

可惜IE 系列不支持

参考

Server-Sent Events 教程

https://www.ruanyifeng.com/blog/2017/05/server-sent_events.html