Server-Sent-Events(SSE)是一种HTML5 API,用于在服务器和客户端之间实时推送数据流。 它基于HTTP协议,通过建立一个持久连接,服务器可以推送消息给客户端,而无需客户端发起请求。 这使得服务器可以实时向客户端发送数据,而不需要客户端轮询服务器。SSE可以用于实现实时通知、实时聊天、实时数据更新和实时监控等功能。
event: ${eventName}
id: 1
retry: 5000
data: ${dataString}如果前端或后端是通过nginx代理出去的,要保证sse连接,nginx配置要做特出处理,
一:nginx 反向代理配置端
如果需要使用nginx对Server-Send-Events进行反向代理的话,需要进行如下额外配置:
proxy_http_version 1.1; # proxy_pass 默认是使用 http v1.0连接后端的,v1.0 不支持keepalive ,所以换成http v1.1 proxy_set_header Connection ""; proxy_buffering off;
如果vue使用开发调试模式,需要在devserver{compress:false}, 关闭压缩选项,因为压缩会导致SSE的换行符出问题。