与客户持久连接

时间:2009-01-29 22:18:41

标签: javascript connection persistence

是否有一般方法使用JavaScript实现应用程序的一部分并提供与服务器的持久连接?我需要服务器能够将数据推送到客户端,无论客户端是否在防火墙后面。提前致谢

5 个答案:

答案 0 :(得分:13)

请参阅Comet - 它类似于ajax,但它保持连接打开,以便服务器可以将信息推送到客户端。

请注意,合规浏览器只能将2个连接(注意:most modern browsers no longer comply)保存到特定域(默认情况下),因此您可能希望拆分域名(例如www.yourdomain.com和comet.yourdomain)。 com)这样你就不会大幅减慢页面的加载速度。或者您可以确保在加载其他所有内容之前不要打开彗星连接。这是值得注意的事情。

答案 1 :(得分:3)

答案 2 :(得分:2)

使用HTTP,连接必须从客户端启动。但是有一些技术可以让服务器保持连接打开并根据需要刷新数据。

这些通常被认为是CometHTTP Streaming架构。

答案 3 :(得分:2)

您可以使用Comet编程技术。基本上,页面调用服务器,直到服务器发送内容后才返回(此时客户端立即进行相同的调用)。这样,服务器可以随时将内容推送到客户端。

支持因平台而异,与服务器相比,服务器问题更多。

答案 4 :(得分:2)