问题标签 [node-soap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9939 浏览

node.js - 使用 Node 通过 https 调用 SOAP Web 服务

我正在尝试使用 node-soap https://github.com/vpulim/node-soap来调用 Web 服务,但是我在使用带有https的模块时遇到了问题。

在下面的代码中,我使用的是http,我可以看到函数并记录函数describe()的a About。(响应为空,可能是因为使用 http(?) 时 WS 是这样设置的)

输出:

错误消息(这很好,因为无论如何响应都是空的):

错误:无法在完成时解析响应 (E:\Qlikview\SourceDocuments\UnderDevelopment\Node\node_modules\so ap\lib\client.js:383:19)

我的问题是,当使用 https 时,我得到一个未定义的客户端。

E:\Qlikview\SourceDocuments\UnderDevelopment\Node\Soap.js:23 console.log(client); ^ ReferenceError: 客户端未在 Object.anonymous 中定义 (E:\Qlikview\SourceDocuments\UnderDevelopment\Node\Soa p.js:23:13)

有人用过 https 的 node-soap 吗?

编辑: 正如下面的结果表明我需要先获得证书。我试过在没有证书的情况下使用 SoapUI,效果很好。也许createClient我可以在 node-soap 中使用一些参数?

console.log(err) 返回:

0 投票
0 回答
161 浏览

soap - node-soap 如何使用soap 1.2版响应消息(来自服务器)

我正在使用节点肥皂库。我的项目从服务器端使用soap 1.2 版。

问题是当我向客户端响应消息时。

我在 node-soap 库中进行了调试,我看到 soap 的命名空间是硬编码的。这是来自 node-soap, server.js 文件的代码。

你可以看到soap命名空间的声明是xmlns:soap=\" http://schemas.xmlsoap.org/soap/envelope/ \"

现在,我将此特定代码更改为:

它有效。

在这个库中有解决问题的最佳方法吗?(比如选项??)(比如forcesoap12headers:true在客户端[它工作得很好])

谢谢你的帮助,爱丽儿

0 投票
0 回答
461 浏览

php - NodeJS Soap 请求/响应

NodeJS 中的请求或解析响应不正确。但它适用于 PHP。

这是有效的PHP版本:

这是使用node-soaplib 的 NodeJS 版本。我还尝试了该xml2js库来解析响应,但没有成功。

如何修复 NodeJS 版本?

也许需要一些标题或信封?

0 投票
0 回答
119 浏览

node.js - 如何在 Node.js 中使用 soap 传递 OptionSetValue 参数值?

我们正在使用soap 包来使用Node.js 中的SOAP 服务。要调用方法,我们使用 args 对象来传递值。

现在的问题是,如果参数值是字符串,我们可以直接传入 args 对象。假设如果参数数据类型是 OptionSetValue 那么我们如何传递呢?

我们如何 在 args 对象中传递customer_type的值?

0 投票
1 回答
879 浏览

node.js - 错误:调用 SOAP 服务时,第一个标记之前的非空白但十六进制中没有字节顺序标记

我正在调用使用 Node-Soap 创建的肥皂服务,这里是 WSDL。

我已经在十六进制编辑器中检查了Byte-Order-Mark并且也用于.replace('\ufeff', '')字符串本身。用于创建肥皂“路线”的代码如下所示:

对课程数据的请求如下所示:

收到的响应是:

如果有人能指出我正确的方向,那就太好了。

0 投票
1 回答
4622 浏览

javascript - 如何在 node.js 中使用 node-soap 或 strong-soap 添加soap标头

我正在尝试在节点中使用 xml Web 服务soap 客户端,但我不确定如何为我的示例添加soap 标头。

查看 strong-soap,有一种方法addSoapHeader(value, qname, options),但我不确定在这种情况下我需要作为 qname 和 options 传递什么。

我需要发送的请求

值应该是:

那么qname应该是什么?auth:AuthenticationHeader? 我在哪里指定命名空间?

node-soap 有更简单的例子吗?我应该使用强肥皂还是节点肥皂?

0 投票
0 回答
628 浏览

node.js - 无法读取在 wsdl 中找到的属性“myOperation” - 使用 NodeJs 和 soap 客户端时出现问题

简而言之,大约有 100 个肥皂网络服务,我需要通过 NodeJs 将它们公开为休息。我的意思是,对于每个肥皂服务,都会有一个休息服务扮演门面的角色。

我按照https://github.com/vpulim/node-soaphttps://github.com/23/node-soap中的说明安装“npm install soap” 。下面的示例工作正常,所以我知道安装很好。

所以,我的问题是:我如何阅读下面的 wsdl?请按照成功示例查看我是如何尝试的,并且我遇到了某些错误,这似乎我在“client.CadastroService.CadastroServiceSoapBinding.consultarDados”中缺少了一些额外的单词。好吧,这个例子中的 wdls 与我的 wsdl 有一点不同。该示例依赖于“wsdl:input wsaw:Action=...”,而我的根本不使用 wsaw:Action。我想它不会改变我必须调用它的方式。我按照以下模式调用:“wsdl:服务名称”。“wsdl:绑定名称”。“wsdl:消息名称”

示例工作:

我的 wsdl(显然经过编辑以使其更简单):

整个错误:

我如何尝试阅读肥皂网络服务(我基本上按照上面的示例工作)

0 投票
0 回答
270 浏览

javascript - 了解 node-soap 中的输入数据和参数

我正在使用 node-soap 模块,它允许您使用 SOAP 连接到 Web 服务。我已经通过 SoapUI 测试了与 Soap-Server(Web 服务)的通信,效果很好。

目前我可以显示方法的输入数据。在这个例子中,我想找出方法 Connection 的输入数据。我可以用这个命令来识别它:client.describe().MachineWebService.MachineBinding.Connection

我的客户端代码如下所示:

我的客户端代码的结果是:

问题: 实际上可以借助输入数据轻松识别参数。但是我的输入数据看起来很乱。我不明白如何使用上述输入数据构造参数。任何想法?

0 投票
1 回答
984 浏览

node-soap - 如何在 node-soap 中设置前缀?

具体来说,有谁知道我如何将命名空间从<soap:Header>to<soapenv:Header>和类似的属性更改为类似的东西soapenv:mustUnderstand="1"

我的代码目前看起来像这样:

它生成的 XML 看起来像这样......

谢谢!

0 投票
1 回答
886 浏览

javascript - 在 Express 中监听 SOAP 请求

我正在使用node-soap通过 Express NodeJS 应用程序进行 SOAP 调用。我已经连接了非常基本的 SOAP 服务,其中大部分都可以正常工作。

然而,有一个返回“找不到资源”消息(注意这是来自服务的有效消息)。然而,当我在 Boomerang 中使用完全相同的标题和正文时,资源会很好地返回。有没有办法记录通过 node-soap 本身发送的完整请求(......而不是像 fiddler 一样安装嗅探器)?

我正在使用的代码示例: