在我的插件中,我总是使用新的XMLHttpRequest(),它运行得很好。 现在所有请求ajax都停止了工作。
目前新的XMLHttpRequest()导致以下错误:ReferenceError:未定义XMLHttpRequest
所以我将代码更改为:
try {
var XMLHttpRequest;
if (typeof(XMLHttpRequest) == "undefined")
XMLHttpRequest = content.XMLHttpRequest;
}
catch (e) {
alert(e);
}
var xmlhttp = new XMLHttpRequest();
...
有时候请求通常有效,但有时却没有。
代码“alert(e);”永远不会被执行,那里就没有错误。
我无法理解为什么有时它会起作用,有时却不起作用。 以前我只使用 var xmlhttp = new XMLHttpRequest(); 并且始终有效。
现在如何创建新的ajax请求?
答案 0 :(得分:1)
正如我在评论中所说,当您在浏览器窗口的上下文中运行时(例如通过覆盖到该窗口加载的代码),XMLHttpRequest
应该绝对可用。我验证了以防万一,它对我有用。
但是如果其他一切都失败了,你仍然可以直接实例化与XMLHttpRequest相对应的XPCOM组件:
var xmlhttp = Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"]
.createInstance(Components.interfaces.nsIXMLHttpRequest);
xmlhttp.open(...);