84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
WebSockets和Server-Sent Events两者都可以对浏览器推送数据。据我而知,两者好似是相互竞争的技术。我如何区分两者之间的不同之处?开发中,你会选择使用哪一种?
原问题:WebSockets vs. Server-Sent events/EventSource
闭关修行中......
最佳答案 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的优点: 实时传输,双方向通信 浏览器支持率较高
最佳答案
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的优点:
实时传输,双方向通信
浏览器支持率较高