html5 - WebSockets VS Server-Sent Events 各有利弊
阿神
阿神 2017-04-17 11:06:10
0
1
573

WebSockets和Server-Sent Events两者都可以对浏览器推送数据。据我而知,两者好似是相互竞争的技术。我如何区分两者之间的不同之处?开发中,你会选择使用哪一种?

原问题:WebSockets vs. Server-Sent events/EventSource

阿神
阿神

闭关修行中......

Antworte allen(1)
洪涛

最佳答案
Alex Recarey:
Websockets和SSE(Server Sent Events)都可以对浏览器传输数据,但两种技术并非是竞争关系。
Websocket既可以给浏览器发送数据,还可以从浏览器端接收数据,比如利用Websockets开发的聊天应用就是一个具有代表性的实例。
而SSE只能上传数据到浏览器,比如在线股票行情、twitter feed updating,这些产品的功能就是如此。
在实践中,Websockets更受关注和喜爱,浏览器支持方面也略比SSE占据优势。
但SSE协议可以更轻松的实现后台操作,还可以在不支持它本身的老版浏览器上使用JavaScript,一些实现实例可以在Modernizr Github页面上查询到。HTML5Rocks曾针对两者做过对比,截取文章片段:

总结
SSE超过Websockets的优点:
运行HTTP协议,而不是自定义协议
能够poly-filled JavaScript反相移植不兼容SSE的浏览器
内置支持重新连接和事件识别符
相当简单的协议
Websockets超过SSE的优点:
实时传输,双方向通信
浏览器支持率较高

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage