|
1
0
你知道彗星是什么吗?这意味着让HTTP连接处于挂起状态(就像下载已经停止一样),直到服务器有一些有趣的事情告诉客户机。 客户机不会有超时。如果当前下载结束,它只需再次请求。 服务器上可能会发生超时,以尝试预先清空从服务器到客户端(代理等)的路由上的硬件中可能发生的网络超时。 编写Comet服务器并不是一件小事。在开始如此危险的冒险之前,你似乎需要更好地理解这些概念。 |
|
|
2
0
我不能很好地回答您的问题,因为到目前为止,您包含的代码还不清楚您的服务器在做什么。Comet很不错,但它不是万能药,正如前面提到的,为了成功实现它,您需要理解一些概念。 我建议您熟悉ASP.NET页面的页面生命周期、该生命周期在客户端请求对象(read xmlhttprequest.readystate,)中的表示方式以及服务器的表示方式。 根据我的经验,就您所包含的代码而言,调用response.end()或使用函数的结尾将关闭响应,而这不一定是您希望发生的事情。 在我们使用的自定义服务器中,我使用事件等待句柄来发出信号,并等待来自客户机的用户输入。我还必须确保,如果用户发送了大量请求,那么数据要么在服务器上正确打包和处理,要么这些请求不会阻塞viewstate线程(该线程处理返回到客户机的输出)。 我相信,当您只使用两个请求时,可以实现最少的复杂性。(我相信这也符合规格,但我似乎找不到ATM。) 要获得良好的阅读效果,请查看Comet和Reverse Ajax(通过apress提供) |
|
|
orzel · 我应该使用哪种通信技术向网站用户推送数据流[已关闭] 8 年前 |
|
|
yehyatt · GCM(谷歌云消息)使用什么技术? 11 年前 |
|
|
Deproblemify · 页面上的PHP退出ajax中止() 12 年前 |
|
|
pasanbsb · Comed服务器广播频道自动删除 12 年前 |