为什么HTTP被设计成一个拉协议?

Mic*_*anc 4 html5 http

我正在观看有关Html 5 WebSockets的许多演示文稿,其中服务器可以初始化与客户端的连接并在没有客户端请求的情况下推送数据.

我们不需要投票等

而且,我很好奇,为什么Http被设计为"拉"而不是全双工协议?这种决定背后的原因是什么?

Chr*_*Wue 10

因为当http首次设计时,它意味着用于从服务器检索文档.最简单的方法是在客户端向服务器请求文档并将其作为响应传递(或者在不存在的情况下发生错误).当你有推送协议意味着服务器需要保持客户端连接可能需要很长时间才能产生更多的资源管理问题 - 请记住我们在这里谈论的是20世纪90年代早期.

  • +1.它旨在浏览文档,而不是创建基于事件的应用程序.请求/响应机制的简单性是它今天仍在使用的原因,也是[许多]的基础(http://en.wikipedia.org/wiki/SOAP)[其他](http:// en. wikipedia.org/wiki/WebDAV) [protocols](http://en.wikipedia.org/wiki/Session_Initiation_Protocol). (2认同)