我已經使用Dreamweaver CS5將IDE構建爲Adobe AIR應用程序。當我預覽應用程序時,一切正常。當我創建應用程序並嘗試運行它時,我運行的第一個XMLHttpRequest失敗。我認爲這是一個安全問題,但我不知道。XMLHttpRequest在Adobe Air預覽版中可用,但未編譯的應用程序
我得到「無效」密碼消息,因爲domainCOM.status將返回0。
更新的狀態,每一次:我安裝的應用觀看了XMLHttpRequest和它說,我得到一個狀態200,我可以看到返回正確的XML。這是menas Adobe AIR在某種程度上使得200的狀態爲0。
UPDATE2:如果我在預覽運行它,我得到
的readyState 2,狀態200 的readyState 3,狀態200 的readyState 3,狀態200 的readyState 4,狀態200
,但如果我在編譯的版本上運行它,我只得到
的readyState 4,狀態0
好像它沒有做任何事情,但我可以看到實際的XHR撥打電話並使用Fiddler2返回。
非常奇怪。
任何幫助/想法,將不勝感激。下面的代碼片段:
var url = "http://open-api.domain.com/authentication.getUserToken.domain";
var vars = "v=3&appKey="+appKey+"&email="+email+"&password="+password;
var domainCOM = new XMLHttpRequest();
domainCOM.open("POST", url, true);
domainCOM.setRequestHeader ("Content-type", "application/x-www-form-urlencoded");
domainCOM.setRequestHeader ("Content-length", vars.length);
domainCOM.setRequestHeader ("Connection", "close");
domainCOM.onreadystatechange = function() {
if (domainCOM.readyState == done) {
if (domainCOM.status == ok) {
if (domainCOM.responseText) {
//do some stuff
}
else {
window.alert('unknown error in authenticationGetUserToken.');
}
}
else {
window.alert('Password/Userid combination is not valid. Please correct and try again.');
}
}
};
domainCOM.send(vars);
return;
感謝, 凱西