我正在开发一个 BlackBerry Phonegap 应用程序。因此,我正在使用 JavaScript。
从本地文件中,我试图获取位于服务器中的一些数据(裸文本)。我正在尝试使用不同的浏览器(主要是 Mozilla 和 Chrome)。我正在使用的代码如下:
try{
request = new XMLHttpRequest();
request.onreadystatechange = processResults;
request.open('GET', url, false);
request.send();
}catch(e){
alert('exception performing data request: ' + e.name + '; ' + e.message);
}
和回调:
function processResults(){
if(request.readyState == 4){
if(request.status == 200){
document.getElementById('divResults').innerHTML = request.responseText;
}else{
alert("Error! Status" + request.status + " - " + request.statusText);
}
}
}
我遇到的问题是永远不会获取数据。异常返回以下错误:
NS_ERROR_FAILURE; Component returned failure code: 0x80004005 (NS_ERROR_FAILURE)
我做了一些研究,这些问题的最常见原因是同源策略。但是,我肯定会在之前禁用它:
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
} catch (e) {
alert("UniversalBrowserRead failed");
}
Firebug 只是指出错误request.send()
在行中,但没有提供进一步的信息。为xmlHTTP status
0,虽然没有request.statusText
显示。我究竟做错了什么?提前致谢 :) 。