如何在 AJAX 调用中使用 SOAP 请求
这是我的 AJAX 应用程序,我需要在其中联系服务器中运行的 Web 服务。
function sendRequest(method, url)
{
method == 'post';
{
http.open(method,url,true);
http.onreadystatechange = handleResponse;
http.send(null);
}
}
这是我从 SOAP UI 中获取的 SOAP 请求,它运行良好。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.bayer.tata.com/" xmlns:tkw="http://tata.com/bayer" xmlns:chim="http://tata.com/chimera">
<soapenv:Header/>
<soapenv:Body>
<ser:strategy>
<!--Optional:-->
<request>
<xmlMessage>
<![CDATA[<test>or like this</test>]]>
</xmlMessage>
</request>
</ser:strategy>
</soapenv:Body>
</soapenv:Envelope>
请告诉我如何在 sendRequest 函数中使用此 SOAP XML 消息。 我只使用普通的 Java Script AJAX(没有像 Jquery、DOJO 或任何)
This is my AJAX Application where i need to contact my Webservice running in server .
function sendRequest(method, url)
{
method == 'post';
{
http.open(method,url,true);
http.onreadystatechange = handleResponse;
http.send(null);
}
}
This is the SOAP Request which i picked up from the SOAP UI , which was working fine
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.bayer.tata.com/" xmlns:tkw="http://tata.com/bayer" xmlns:chim="http://tata.com/chimera">
<soapenv:Header/>
<soapenv:Body>
<ser:strategy>
<!--Optional:-->
<request>
<xmlMessage>
<![CDATA[<test>or like this</test>]]>
</xmlMessage>
</request>
</ser:strategy>
</soapenv:Body>
</soapenv:Envelope>
Please tell me how can i use use this SOAP XML message within the sendRequest function .
I am using only plain Java Script AJAX ( Nothing like Jquery , DOJO , or any )
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为这篇文章可以帮助你。但是,如果请求不需要 SOAP 标头或其他奇怪的东西,大多数 Web 服务器允许您使用纯 HTTP Post(主体请求中没有 SOAP 格式)来调用 Web 服务。
.NET 和普通 javaScript 中的示例:
.NET Web 服务
web.config:
JavaScript 请求:
您将此请求发送到服务器:
并从服务器接收此响应:
使用 javascript 解析它以获取所需的信息。
PS:您可以将服务器和浏览器请求配置为发送和接收 JSON 数据而不是 XML。
我希望它有帮助。
I think this Post can help you. But most of web servers allows you to invoke webservices using plain HTTP Post (without SOAP format in the body request) if the request doesn't need SOAP headers or other weird things.
An example in .NET and plain javaScript:
.NET web service
web.config:
JavaScript request:
You send this request to the server:
and recive this response from the server:
Parse it with javascript to obtain the info you need.
PS: You can configure the server and the browser request to send and recive JSON data instead of XML.
I hope it's helps.