我有一个长时间运行的任务,使用 jquery ajax 调用。我正在使用阻止 ui 插件显示“加载中”。无论如何,我可以将进度消息发送回客户端以显示进度,并在块 ui 插件消息上更新该进度。
所以它会显示这一点(当服务器完成其工作时)。 。
“正在加载第一个源......”
“正在加载第二个源......”
“正在加载第三个来源……”
“解析结果……”
从我所看到的上传内容的情况来看 - 人们创建一个单独的网关并查询它的进度信息,因为它仅在服务器端可用。但我认为对于你的情况来说这不是最好的事情。
如果您想加载带有进度信息的内容或允许服务器在生成输出时弹出进度信息,那么http 流式传输就是你想要的。覆盖得很好here。基本上它是一个单一的 http 请求,服务器会分块响应一分钟左右(因此在需要时发送内容),然后打开一个新连接。
这对我来说是一个很大的发现;)
[edit]
目前有很多更好的技术可用,所有这些技术都包含在套接字IO- Websockets 可以回退到其他技术,包括http 流式传输
Socket.IO 是 NodeJS 的一个模块,但还有其他类似的实现。我已经与 JAVA Socket.IO 实现交换了一些数据包https://github.com/Atmosphere/atmosphere
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)