【发布时间】:2015-07-29 13:16:46
【问题描述】:
这里的第一篇文章 :) 我有一个向 PHP 服务器发送 ajax 请求的移动应用程序(Phonegap),比如朋友邀请。收到请求时,需要做一些事情(创建链接、授权、发送电子邮件等),这需要很长时间(5 秒)。在此期间,应用上的用户正在查看微调器,等待 ajax 请求完成。
理想情况下:
- 返回确认“已收到好友请求”,无需等待过程完成。
- 没有 Cron 作业,因为等待 1 分钟太长。
- 简单的事情(Gearman 很可怕)
在应用上:
$.ajax({
url: 'http://www.my_site.com/action.php',
type: 'POST',
data: "my_guid="+my_guid+"&friend_guid="+friend_guid,
dataType: 'json',
success: function(json) {
// Send confirmation
},
error: function(json) {
// Show error
}
}
在服务器上 (PHP):
$my_guid = $_POST['my_guid'];
$friend_guid = $_POST['friend_guid'];
// return here confirmation to the app
veryLongFunction($my_guid,$friend_guid); //continue executing long function
【问题讨论】:
-
你是不是想多了还是我不明白?不要为 ajax 事件加载微调器,并在触发 ajax 事件后继续运行您的函数。
-
好吧,我需要确保数据在那里安全。如果确实如此,我想将控制权交还给用户。所以......在我确认数据在那里没有任何错误之前,不应该允许用户离开页面。