結果をログファイルに追加するpythonファイルがあり、このログをUIで同期的に出力する必要があります。続き最初のajax関数が完了するまで、再帰的にajax関数を呼び出します。
は私が私の最初のAJAX呼び出しが完了した後に1に設定されているフラグ変数を、使用している、私のコードここ
var flag = 0;
function write_log_in_file(){
var settings = {
"async": true,
"crossDomain": true,
"url": "http://localhost/build5/builds/test.py",
"method": "POST",
"headers": {
"cache-control": "no-cache"
}
}
$.ajax(settings).done(function (response) {
flag =1;
console.log(response);
});
};
function get_log_from_file(){
var settings = {
"async": true,
"crossDomain": true,
"url": "http://localhost/build5/builds/build.log",
"method": "GET",
"headers": {
"cache-control": "no-cache"
}
}
$.ajax(settings).done(function (response) {
console.log(response);
});
};
//Write build log in build.log file
write_log_in_file();
//Get log until python call is completed
while(!flag){
get_log_from_file();
}
です。それまでは、私の2番目のajax呼び出しは再帰的に呼び出されています。
私はwhileを使っているので、フラグ変数は決して1になり、whileは無限ループに入りません。
他の方法があります。私は再帰的に私のajax関数を呼び出すことができますが、他のajax関数は完了していますか?
"python"タグはPythonとは関係がないため削除されました。 –