我正在使用XMLHttpRequest POST来调用SOAP服务。当我关闭缓存时,http请求在IE中正常工作。我可以调用一个函数并获取正确的soap响应xml。但是,当我在Firefox或Chrome中运行它时,http请求对象似乎没有任何正文内容。这是我的代码:
var xmlhttp = null;
if(window.XMLHttpRequest) {
alert("supports XMLHttpRequest");
xmlhttp = new XMLHttpRequest();
} else {
// Internet Explorer
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
xmlhttp.open("POST", "http://www.zazzycard.com:22080/eBizCard/ws/eBizCardService", true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
alert(xmlhttp.responseText);
alert(xmlhttp.responseXML);
}
}
xmlhttp.setRequestHeader("SOAPAction", "http://ws.ebizcard.com/AuthenticateUser");
xmlhttp.setRequestHeader("Content-Type", "text/xml");
xmlhttp.setRequestHeader("Content-Length", 1000);
xmlhttp.setRequestHeader("Cache-Control", "max-age=0");
xmlhttp.send(xml);
有谁知道为什么这不适用于Firefox?谢谢!
答案 0 :(得分:-5)
我知道这是陈词滥调,但你真的可能想要使用jQuery,以避免所有if (window.XMLHttpRequest) ...
的东西。