Ajax vs. Web套接字与Web Workers

Mir*_*ael 23 ajax html5 web

这三者有什么区别?他们似乎完全一样.为什么以及何时选择使用一种方法而不是另一种方法?

lan*_*nzz 39

AJAX和websockets执行类似的任务 - 它们都建立了与服务器的通信通道.Web工作者与它们中的任何一个都无关,它们只是JS执行的单独线程.

AJAX比websockets更成熟 - 它的使用时间更长,浏览器支持更广泛.AJAX是面向请求的 - 您向服务器发出请求,服务器响应,并且连接已关闭.另一方面,Websockets建立与服务器的持久连接,通过它可以在两个方向上交换多条消息.

如果要在不阻止浏览器界面的情况下执行处理器密集型任务,Web工作人员非常有用.


sri*_*lla 14

他们不一样.

Ajax:这是一种从UI渲染器异步与Web服务器交互的方式

Web套接字:一种HTML5功能,使用该功能可以与任何扩展浏览器范围的Socket服务器进行交互

Web Workers:另一种HTML5功能,可帮助您使用Java Script从Web浏览器进行多线程编程


Saa*_*jan 12

它们不一样.但是可以一起使用它们来构建高级应用程序.

Ajax:缩写状态是异步javascript和xml ..用于在调用时从服务器动态加载内容.

Websockets:Websockets是HTML5中定义的功能.维基百科称"WebSocket是一种通过单一TCP连接提供全双工通信通道的协议".所以这主要用于视频通话,在线聊天等实时通信.

WebWorkers:此功能也在HTML5中定义.这基本上用于在Javascript中实现多线程功能.由于javascript是单线程编程语言,因此只要使用它完成繁重的计算任务,它就会中断或暂停.为了克服这种破坏,Webworkers被添加到javascript中.

您可以在Webworkers中执行Ajax和Websockets.但是,出于安全原因,您无法使用Web工作人员操纵DOM.