2013-09-23 34 views
0

我使用进度条在Django中构建了一个简单的图像上传器。当图片最初上传时,我的确看到进度条正确更新到100%。不过,我还会在服务器端进行进一步的操作(如缩放,保存在不同的位置,创建缩略图等)。在Ajax中进一步处理信息?

有没有办法让客户端知道“处理图像”正在取得进展,并通过另一个进度条报告这一点,比如?

感谢您的帮助!

+0

能否请您发布一些代码,到目前为止,你试过吗? – Chandresh

+0

你是否同步处理图像? – esauro

+0

[Socket.IO](http://socket.io/) –

回答

0

从理论上讲,您的Django应用程序可以定期刷新自己并维护服务器上的状态,更新进度指示器,因为它可以检测到进程达到了哪个阶段,但是如果您标记了JQuery和Ajax,我怀疑您希望执行此操作进度更新在客户端。

如果从一个视图通过多个HTTP请求传递图像处理在Django下一然后在JQuery中您将通过完成被发送多个Ajax请求,以“进步”的形象。 由于每个请求完成并返回一些东西到客户端,您可以JQuery的抢完成状态,相应地更新进度条,然后顺序提交下一个请求到Django的作为下一个请求。 如果您的Django应用程序只需在与一个HTTP请求到服务器后台的一切,再没有什么客户端可以做检查进度(即我所知道的),除非Django应用程序可以公开它的进展在不同的以某种方式查看,你的客户端可以定期检查,看看它在哪里。