嗨,任何人都可以帮助我吗?
如何请求 SOAP Web 服务并获取 xml 响应。
塞纳里奥:
使用soap ui,我发送带有用户名、密码身份验证的wsdl url,并且我还将发送soap xml数据,然后我会得到响应。
如何使用 Nodejs 或 sails 实现同样的事情。
在 SoapUi 中我的soap xml 请求就像
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tier="http://HCSLN9191-GMS.gois.ito.unisys.com/Tier1ICLStd:Tier1ICLMB_StdDispatch">
<soapenv:Header/>
<soapenv:Body>
<tier:UnisysMB_Dispatch>
<PayLoad>SomeData</PayLoad>
</tier:UnisysMB_Dispatch>
</soapenv:Body>
</soapenv:Envelope>
我的 Soap 身份验证就像
$用户名:xyz & 密码:xyz
我的 wsdl 网址是http://esbuatt1wm.ito.xyz.com:7001/ws/Tier1ICLStd_New:Tier1ICLMB_StdDispatch_New?WSDL http://esbuatt1wm.ito.xyz.com:7001/ws/Tier1ICLStd_New:Tier1ICLMB_StdDispatch_New?WSDL
提供此信息后,我收到 xml 响应,例如
<ser-root:CommAck xmlns:ser-root="http://HCSLN1181-GMS.gois.ito.unisys.com/Tier1ICLStd_New:Tier1ICLMB_StdDispatch_New" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<CommAck>
<MB_UUID>cbbb683d-e9b1-4d12-b0db-8006134aad27</MB_UUID>
<ServiceID>McDonalds</ServiceID>
<Acknowledge>0</Acknowledge>
<Comment>Payload does not contain the pattermatch xpath.</Comment>
</CommAck>
</ser-root:CommAck>
我的问题是如何使用 Node Easy Soap 获得上述 xml 响应,
我对肥皂概念很陌生。任何人都可以帮我给我上述场景的正确片段......
你可以使用这个包https://www.npmjs.com/package/soap https://www.npmjs.com/package/soap。示例位于同一链接中。我把部分内容贴在下面:
使用 npm 安装:
npm install soap
Example:
var soap = require('soap');
var url = 'http://example.com/wsdl?wsdl';
var args = {name: 'value'};
soap.createClient(url, function(err, client) {
client.MyFunction(args, function(err, result) {
console.log(result);
});
});
基本身份验证安全
client.setSecurity(new soap.BasicAuthSecurity('username', 'password'));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)