0
我正在使用HTML + Javascript製作一個小型Adobe AIR應用程序(我的第一個應用程序)。我需要運行多個異步數據請求,但第二個似乎並未解僱(請注意,這些請求並非最初同時運行)。我試圖將程序剝離到最低限度,但最初只有第一個請求被解僱,但事情變得很奇怪。代碼和輸出如下:Adobe AIR和多個XMLHttpRequests正在......怪異
<html>
<head>
<script type="text/javascript" src="AIRAliases.js"></script>
<script type="text/javascript">
function download(page) {
var url = "http://en.wikipedia.org/w/api.php?action=parse&format=xml&page=" + page;
xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", url,true);
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState == 4) {
air.trace("Done");
}
}
xmlhttp.send(null);
}
function appLoad() {
download("Main Page");
download("Main Page");
}
</script>
</head>
<body onLoad="appLoad()">
</body>
</html>
預期輸出:
Done
Done
實際輸出:
C:\AIRSDK\apps\HelloWorld>adl HelloWorld-app.xml
Done
C:\AIRSDK\apps\HelloWorld>adl HelloWorld-app.xml
Done
C:\AIRSDK\apps\HelloWorld>adl HelloWorld-app.xml
Done
C:\AIRSDK\apps\HelloWorld>adl HelloWorld-app.xml
Done
Done
Done
Done
Done
Done
Done
沒有人見過這樣的事?
對不起挖了一箇舊線,但我試圖做一個非同步的XMLHttpRequest,但沒有得到responseText和responseXML的在我readystatechange功能。它只被調用一次,狀態設置爲0,readystate爲4.在你的代碼中,它表示已完成,但在哪裏以及如何存儲頁面的內容?這裏是示例代碼:http://stackoverflow.com/questions/14155112/unable-to-get-response-status-from-adobe-air-xmlhttprequest – HMR 2013-01-04 13:16:48
請注意,在Windows上使用IE瀏覽器,所以當我的IE設置爲離線工作我有奇怪的事情發生與請求。有些沒問題,因爲他們在緩存中,有些會失敗。 – HMR 2013-01-05 11:21:44