首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jquery Post/AJAX -用代码关闭窗口会影响服务器脚本吗?

Jquery Post/AJAX -用代码关闭窗口会影响服务器脚本吗?
EN

Stack Overflow用户
提问于 2013-09-11 02:23:09
回答 3查看 385关注 0票数 3

作为开场白,我知道这不是一个很好的问题,也很难解释。

我有一个PHP脚本,需要5-10分钟来运行。我不希望用户不得不等待它。如果我使用jquery ajax“触发”脚本,然后用户离开该页面或关闭浏览器(并且不等待响应(如果有的话)(如果有),脚本仍将完全执行(假设没有错误等)。

谢谢!

EN

回答 3

Stack Overflow用户

发布于 2013-09-11 02:31:33

一旦服务器接收到带有数据的AJAX请求,它将照常处理,即使您关闭页面或窗口也是如此。如果您在服务器收到AJAX请求之前关闭浏览器窗口,则不会对其进行处理。

此外,如果AJAX请求返回任何类型的数据或显示消息,建议您保持窗口打开,以便有一些“监听”页面来监听服务器的请求响应。

票数 0
EN

Stack Overflow用户

发布于 2013-09-11 02:33:03

在您的PHP脚本中,您可以调用ignore_user_abort(true)函数,这将导致脚本运行,而不管用户是否关闭页面。

票数 0
EN

Stack Overflow用户

发布于 2013-09-11 02:33:30

如果您有权访问以下命令行,则可以使用命令行:

代码语言:javascript
复制
php /loc/to/file.php

这没有超时,可能比port:80 (浏览器调用phpfile)更快。

或者通过php的exec()调用另一个文件中的主php文件

代码语言:javascript
复制
<?php
exec("php /loc/to/file.php > /loc/to/result.txt");
?>

您可能希望使用results.txt的目录shell_exec(),并且文件本身需要是可写的。“大于”符号将phpfile的输出写入result.txt。如果php将回显123,那将是result.txt的内容。

5到10分钟是一个很长的时间,你可能想要检查你的代码是否有改进。如果您正在使用一个数据库,在您使用分配列上添加索引(一个索引),可以节省大量的时间

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18726247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档