以下是一个使用Ajax轮询的示例代码,它可以在无延迟超时触发时执行特定的操作。
function fetchData() {
// 发送Ajax请求获取数据
$.ajax({
url: 'your_api_url',
method: 'GET',
success: function(data) {
// 处理返回的数据
if (data.status === 'complete') {
// 执行特定的操作或处理逻辑
console.log('任务已完成');
} else if (data.status === 'in_progress') {
// 如果任务还在进行中,则继续轮询
setTimeout(fetchData, 1000); // 设置轮询间隔为1秒
}
},
error: function() {
// 处理错误情况
console.log('请求发生错误');
}
});
}
// 启动轮询
fetchData();
在上面的代码中,fetchData函数使用Ajax发送GET请求来获取数据。如果返回的数据状态为complete,则表示任务已完成,可以执行特定的操作或处理逻辑。如果返回的数据状态为in_progress,则表示任务仍在进行中,我们使用setTimeout函数在1秒后再次调用fetchData函数来实现轮询。
请注意,上述代码使用了jQuery的Ajax功能。如果您不想使用jQuery,可以使用原生的XMLHttpRequest对象来实现相同的效果。
上一篇:Ajax路径问题