Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AJAX等待文件在另一台服务器上存在_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript AJAX等待文件在另一台服务器上存在

Javascript AJAX等待文件在另一台服务器上存在,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我正在开发一个基于服务器的网站。一个是免费主机,另一个是树莓皮。当你在免费主机上访问一个网页时,你会得到一个表单,在其中输入一个链接。链接被发送到Raspberry Pi,该Pi永久运行一个脚本,该脚本下载收到的链接的一些内容,并保存一个大的txt文件。这个脚本需要一点时间来加载(大约30秒),所以我想在主页中创建一个Javascript脚本(免费主机一,格式为),其中显示一个加载图标,并在raspberry downloads文件夹中进行检查,直到文件存在 我认为AJAX将是最好的。工作流程是

我正在开发一个基于服务器的网站。一个是免费主机,另一个是树莓皮。当你在免费主机上访问一个网页时,你会得到一个表单,在其中输入一个链接。链接被发送到Raspberry Pi,该Pi永久运行一个脚本,该脚本下载收到的链接的一些内容,并保存一个大的txt文件。这个脚本需要一点时间来加载(大约30秒),所以我想在主页中创建一个Javascript脚本(免费主机一,格式为),其中显示一个加载图标,并在raspberry downloads文件夹中进行检查,直到文件存在

我认为AJAX将是最好的。工作流程是:

用户访问form.php并输入链接 表格直接发送至RPi RPi开始下载内容,并使用get参数id将用户返回到refferer页面= 这里ajax代码开始工作,检查url是否存在。txt如果存在,则显示下载链接,否则等待检查,直到获得200状态代码(这是我需要的)

我知道javascript和不同服务器的问题,所以我在form.php的同一个服务器和文件夹中创建了一个名为check.php的php脚本,该脚本获取id作为参数,并返回200或404,因此ajax代码只需要获得该答案并连续运行

我怎么做?我是AJAX新手,我只懂一点Javascript。你能帮我翻译一下AJAX代码吗

My form.php?id=页面:


下载器
网址:
$.ajax({
键入:“POST”,
url:“/check.php”,
数据:{'id':''},
//检查响应是200还是404,如果是404,请保持每秒检查一次,否则显示mesage
}
});
使用此

function checkFile()
{
    $.ajax({
        type: 'POST',
        url: '/check.php',
        data: {'id':'999'},
        error : function(){
            setTimeout(function(){ checkFile(); }, 3000);
        },
        success : function(data) {
            //do whatever you want
        }
    });
}

$(function() {
    checkFile();
});

非常感谢,如果文件不存在,我只需要修改check.php文件以返回404错误。