标签:服务 返回 浏览器 服务器 类型 socket html 编写 键值
SSE是Server-sent Events
的简称,它是HTML5中的一种规范。目前为止那些老旧的浏览器是不直接支持SSE规范的,比如IE内核的浏览器。
我们知道websocket可以实现客户端与服务端的双向通信。SSE这个东西是可以实现服务端主动向客户端进行通信的,但是它仅仅是单向的。如果客户端与服务器端的数据交互不是特别频繁,那么我们是可以使用SSE技术来实现的。
Server-sent Events
主要由两部分组成。
1.服务器端与浏览器端之间的通讯协议
2.前端js对象EventSource
服务端若要向前端发送一个SSE,响应的类型应该为"text/event-stream",响应文本的内容是一个事件流,当然还是文本类型,这个看响应类型就知道。
每个事件由类型和数据组成,同时每个事件都有一个标识符(键值对的形式),不同事件通过车符和换行符的空行(“\r\n”)来分隔。比如:
data: eve1 event
data: eve2 event
id: 0
event: eve
data: eve3 event
id: 1
含义:
retry: 浏览器在连接断开之后进行再次连接之前的等待时间
代码详情见github
https://github.com/yusonghu/sse
标签:服务 返回 浏览器 服务器 类型 socket html 编写 键值
原文地址:https://www.cnblogs.com/bananafish/p/11632022.html