我试图了解我的代码所发生的事情。我有一个xmlhttp请求将数据发布到我的sendmail.php脚本,该脚本然后处理数据一段时间。
但是在php处理过程中,大约一分钟(但它有所不同),会向脚本发送一个空白请求,这意味着我没有从原始帖子中获得响应。
我放了一个inprogress标志来阻止任何双击,但这并没有解决问题。我不确定什么时候可以随机发送请求?
function SendPHP(str, callback){
xmlhttp = new XMLHttpRequest();
str = "q=" + encodeURIComponent(str);
xmlhttp.open("POST","sendmail.php", true);
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState == 4){
inProgress=false;
if(xmlhttp.status == 200){
callback(xmlhttp.responseText);
}
}
};
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
if (inProgress==false){
inProgress=true;
xmlhttp.send(str);
}
else{
writeDisplayConsole("ERROR: xmlhttp fired twice!");
}
}