Soap 无法加载Javascript XMLHttpRequesthttp://XX.XX.XX. 否';访问控制允许原点';请求的资源上存在标头
我的客户机在其服务器上运行一个Web服务,该服务接受Soap请求并返回Soap响应。我唯一拥有的是它运行的IP地址、端口和一些示例Soap请求字符串。 问题是,当我在Mozilla的SOA客户端中使用给定的IP地址和Soap请求字符串运行Soap请求时,我得到了正确的响应。但是,当我试图在本地项目中实现同样的目标时,我发现“XMLHttpRequest无法加载。请求的资源上不存在“访问控制允许源”标题。”错误。请查找我使用的以下代码 var xmhtp=new XMLHttpRequest()Soap 无法加载Javascript XMLHttpRequesthttp://XX.XX.XX. 否';访问控制允许原点';请求的资源上存在标头,soap,xmlhttprequest,Soap,Xmlhttprequest,我的客户机在其服务器上运行一个Web服务,该服务接受Soap请求并返回Soap响应。我唯一拥有的是它运行的IP地址、端口和一些示例Soap请求字符串。 问题是,当我在Mozilla的SOA客户端中使用给定的IP地址和Soap请求字符串运行Soap请求时,我得到了正确的响应。但是,当我试图在本地项目中实现同样的目标时,我发现“XMLHttpRequest无法加载。请求的资源上不存在“访问控制允许源”标题。”错误。请查找我使用的以下代码 var xmhtp=new XMLHttpRequest()
xmhtp.onreadystatechange=函数(){
if(xmhtp.readyState==4&&xmhtp.status==200){
document.getElementById(“dvResponse”).innerHTML=xmhtp.responseText;
}
};
var sr=''+
'' +
'' +
'' +
“2015-11-30T08:00:00”+
“2016-01-11T18:15:00”+
“示例1”+
'' +
'' +
'';
xmhtp.open(“POST”http://XXX.XX.XX.XXX:80/“,对);
//发送POST请求
xmhtp.send(sr);
请帮忙。
谢谢,您拨打的Web服务
http://xx.xx.xx.xx
没有在其响应头中返回访问控制允许源站
,因此由于跨源资源共享(CORS)规范,请求被拒绝
你可以
您的Web服务需要将访问控制允许源添加到服务的响应头中,以便您通过此错误。解决方案将取决于托管服务的web服务器的类型
xmhtp.onreadystatechange = function () {
if (xmhtp.readyState == 4 && xmhtp.status == 200) {
document.getElementById("dvResponse").innerHTML = xmhtp.responseText;
}
};
var sr = '<?xml version="1.0"?>' +
'<SOAP-ENV:Envelope ' +
'xmlns:xsd="http://www.w3.org/2001/XMLSchema" ' +
'xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" ' +
'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ' +
'xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">' +
'<SOAP-ENV:Body>' +
'<m:dcGetProd xmlns:m="urn:abc.aa">' +
'<startTime xsi:type="xsd:dateTime">2015-11-30T08:00:00</startTime>' +
'<endTime xsi:type="xsd:dateTime">2016-01-11T18:15:00</endTime>' +
'<dcName xsi:type="xsd:string">Example1</dcName>' +
'</m:dcGetProd>' +
'</SOAP-ENV:Body>' +
'</SOAP-ENV:Envelope>';
xmhtp.open("POST", "http://XXX.XX.XX.XXX:80/", true);
// Send the POST request
xmhtp.send(sr);