0

假设我有一个加载 page.html 的视图页面(请求)。

现在,在成功加载 page.html 后,我想在 page.html 加载后 10-15 秒后自动运行一个 python 脚本。怎么可能?

此外,是否可以动态显示脚本的状态(运行/停止/语法错误..等)

4

3 回答 3

1

从 javascript 运行脚本不是一个干净的方法,因为用户可以关闭浏览器,禁用 js ......等等,而不是你可以使用 django-celery,它让你运行背景脚本,你可以检查状态来自中间件的动态脚本。祝你好运

于 2012-07-20T09:50:38.043 回答
0

对于这样的用例, Celery可能会派上用场。您可以从视图中启动任务(或调用它们的脚本)(即使有延迟,也可以根据需要)。除非您选择 WebSockets 之类的东西,否则将状态报告发送回浏览器会更加困难,但目前这是高度实验性的。

于 2012-07-20T10:13:02.517 回答
0

您可以在 10-15 秒后将 AJAX 的客户端超时添加回服务器。将其指向不同的视图并在该视图中执行您的脚本。例如:

function runServerScript() {
    $.get("/yourviewurlhere", function(data) {
        // Do something with the return data
    });
}
setTimeout("runServerScript()", 10000);

如果要显示状态,客户端必须向服务器发出多个请求。

于 2012-07-20T06:39:32.273 回答