PHP ajax 异步执行不等待执行结果的处理方法
2015-05-27 00:00
483 查看
短地址生成应用中,要根据长地址生成网页快照,这个生成时间非瞬发,不可预估。
所以前台方面采用的方案一般为先展示生成的短地址,再定期AJAX轮查网页快照是否生成完毕。
So,PHP代码这里做了如下处理:
前台Js的ajax脚本:
回调函数checkSnap等待PHP的check_snap检测网页快照 文件是否生成完毕。
收到生成完毕的信息后,清楚_wt这个定时器。
这样,PHP和前台AJAX这对JFYF就合作得很欢快了~
所以前台方面采用的方案一般为先展示生成的短地址,再定期AJAX轮查网页快照是否生成完毕。
So,PHP代码这里做了如下处理:
// 这边服务器采用的是phantomjs 来生成网页快照 $cd = '/home/emp/phpinstall/phantomjs-1.5.0/bin/phantomjs /home/emp/phpinstall/phantomjs/snap.js "'.$url.'" /home/emp/public_html_demo/cms/'.$thumb.' & '; try{ @pclose(popen($cd,"r")); }catch(Exception $e){}
前台Js的ajax脚本:
_wt = window.setInterval("sys.ajax('?m=shorturl&c=index&a=check_snap','',callback.checkSnap);",200);
回调函数checkSnap等待PHP的check_snap检测网页快照 文件是否生成完毕。
收到生成完毕的信息后,清楚_wt这个定时器。
clearTimeout(_wt);
这样,PHP和前台AJAX这对JFYF就合作得很欢快了~
相关文章推荐
- PHP ajax 异步执行不等待执行结果的处理方法
- Nginx执行php,显示“No input file specified. ”的处理方法
- Ajax请求二进制流进行处理(ajax异步下载文件)的简单方法
- PHP 异步执行方法,模拟多线程的应用分析
- Asp.net 更改Alert样式和后台注册Jquery的Ajax异步提交事件[包括处理前操作、处理后操作(注明:此方法只是作为参考,如有需要可自行修改)]
- C#执行executescalar()方法无结果时如何处理
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(2):处理异步调用中的异常
- Promise分离异步执行代码和处理结果代码
- 前端通过AJAX提交数据,后台PHP处理数据实现异步操作基本流程
- 执行了不等待结果? 异步操作MySQL:Tornado-MySQL
- ajax不执行异步方法,直接执行error回调函数
- php分页查询mysql结果的base64处理方法示例
- Ajax程序:处理异步调用中的异常(使用Asp.Net Ajax内建的异常处理方法)
- php与ajax交互——实现php实时返回结果给ajax,并在后台保持继续运行的方法
- ajax不执行异步方法,直接执行error回调函数
- Nginx执行php显示no input file specified的处理方法
- PHP 异步执行方法,模拟多线程的应用分析
- jquery异步ajax超大长度base64图片长字段数据传输问题解决办法和php后台处理办法
- Nginx执行php,显示“No input file specified. ”的处理方法
- [置顶] Ajax程序:处理异步调用中的异常(使用Asp.Net Ajax内建的异常处理方法)