所有HTTP响应都需要客户端发起它们,即使是使用AJAX发出的响应也是如此。但GMail的聊天功能能够接收其他用户发来的信息,即使我只是坐在舒适的电脑椅上观看,而不是与浏览器互动。他们是怎么做到的?
发布于 2009-04-09 03:58:21
这项技术被称为"comet",但也被称为“服务器推送”、“反向ajax”等。
它是关于将数据从服务器推送到浏览器,保持http连接的活动。有关它的更多信息,请访问wikipedia article (English version
这也是来自DWR的Joe Walker的pretty good presentation,他在那里谈到了彗星。
发布于 2009-04-09 03:56:31
正如您正确地指出的那样,HTTP需要由客户端“拉”出数据。Gmail仍然可以通过使用计时器来触发HTTP操作,而不是要求用户点击某些东西,从而从服务器“拉”出数据。因此,它可能看起来是自动的,但它仍然是客户端启动的。
发布于 2009-04-09 04:06:23
是的,Comets是正确的。Google Web Toolkit Applications by Ryan Dewsbury在第9章解释了如何创建一个基于Comets的即时通讯应用程序。
https://stackoverflow.com/questions/732705
复制相似问题