我在做什麼: 1.最初根據某些輸入向服務器發出ajax請求 2.服務器返回由RQ(Python-rq)生成的作業ID,與作業ID構建 3.基於一個URL進行的作業ID Ajax請求定期,直到一個有效的響應,獲得Jquery Ajax服務器輪詢;根據早期的ajax響應輪詢服務器
我有什麼:
$.ajax({
type: "POST",
url: "/start",
data:{crop: valueCrop, state: valueState, variablemeasure: valueVariable, unit:unitMeasure, from:yearFrom, to:yearTo},
success: function(results) {
console.log(results);
var jobId='';
jobId = results;
function ajax_request() {
$.ajax({
type: "GET",
url: "/results/" + jobId,
dataType: "json",
success:function(xhr_data) {
if (xhr_data == {"status":"pending","data":[]}){
console.log("Waiting for response");
setTimeout(function() { ajax_request(); }, 2000);
} else {
console.log(xhr_data);
}
},
error:function(error) {
console.log(error)
}
});
}
},
error: function(error) {
console.log(error)
}
})
這甚至可能嗎?我在控制檯上沒有得到任何輸出,儘管rq說這個工作已經完成了。我認爲它不進入,如果循環。當我訪問「/ results/jobId」網址時,我可以看到結果。 請幫忙。
我能看到的作業ID在控制檯中。然後沒有。 –