我使用以下脚本通过firefox扩展UI加载一些数据。
var req = Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance();
var www = "http://localhost/view?url=http://google.com";
req.open('GET', www, true);
if (req.readyState){
alert(req.readyState);
}
它仅警报1.
该脚本在错误控制台中显示没有错误,并且启用了严格的javascript。
答案 0 :(得分:0)
您的代码存在两个问题:
req.send(null)
。该请求仅在您致电send()
。您正在执行异步请求,因为您已将the third parameter for open()
指定为true
。这意味着,当您请求readyState
时,请求仍将执行。你应该改为使用readystatechange监听器:
req.onreadystatechange = function (aEvt) {
if (req.readyState == 4) {
if(req.status == 200)
dump(req.responseText);
else
dump("Error loading page\n");
}
};
我建议您查看the documentation on Using XMLHttpRequest,其中包含上述示例和其他几个示例。