问题标签 [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 回答
6715 浏览

xml - node-soap 客户端 (Node.js) 中数组字段的命名空间

如何不仅为对象配置数组的节点肥皂客户端集命名空间?

我的“sendPatient”方法的参数:

节点肥皂产生:

它有效,但我需要发送标识符数组,而不仅仅是一个,所以当我放置数组时

节点肥皂产生:

我从服务器收到<ns1:identifiers>部分错误

我究竟做错了什么?我可以以某种方式添加xmlns:ns1="http://xxx/patient/"<soap:Envelope>标签或配置 node-soap 以将其添加到数组中(不仅仅是简单的对象)吗?PS对不起我的英语

0 投票
2 回答
4332 浏览

xml - 如何将身份验证标头传递给 node-soap

我正在尝试将 wsdl 服务用作客户端,但我找不到如何设置一些标头。

我需要这个的原因是因为我尝试使用的 wsdl 通过标题需要用户名和密码。这是wsdl

这是代码:

我必须在标头中发送身份验证,但它不起作用
我的东西soapHeader 的 var 是错误的。我将如何解决身份验证问题?多谢

0 投票
0 回答
1873 浏览

asmx - 无效的 WSDL URL:在 node-soap 上

我对网络服务相当陌生,我需要从肥皂服务中消费一个。

起初我得到Error: Invalid WSDL URL: http://remoteweb/ws/service1.asmx?wsdl Code: 401,然后是响应体作为result.
如果我转到 urlhttp://remoteweb/ws/service1.asmx?wsdl一切都很好,我会看到文件的平静,我确认remoteMethod等待这 3 个参数。

0 投票
0 回答
717 浏览

wsdl - 如何将多个 WSDL 文件合并或包含到一个文件中

我有一些 WSDL 文件,它们都在同一个命名空间中,每个文件中只有一个服务。我希望有一种方法可以创建另一个包含它们的 WSDL,或者有一个工具来连接它们。

如何将所有这些 WSDL 连接或包含为一个?

0 投票
0 回答
950 浏览

javascript - 使用 node-soap:将参数传递给方法时获取 ECONNREFUSED

我正在使用 node-soap 与 Web 服务进行通信,但我无法让它工作。

下面的代码会引发错误 ECONNREFUSED。但是,如果我不将 args 变量放入函数中,我会得到响应。有谁知道会是什么?

这是我从上面运行代码时得到的:

这就是我在没有参数的情况下调用它时得到的:

因此,它在没有传递参数时有效(显然什么也没找到),但在传递时会出错。

0 投票
1 回答
258 浏览

javascript - 在node.js中处理来自soap Web服务调用的字符串响应的最佳方法

新手问题在这里。我正在调用使用 node-soap 在 node.js 中进行 Web 服务调用并获得类似于以下内容的响应:

如果 OperationResult 为“成功”,从响应中提取 SessionId 值的最佳方法是什么?我猜我可以用 indexof 和 substring 来做到这一点,但即使对于像我这样的新手来说,这听起来也不是一个好的解决方案。

0 投票
2 回答
2959 浏览

node.js - Node.js 肥皂请求从参数中删除命名空间

我无法向服务发送正确的参数。

使用的代码:

Hello 函数应返回字符串“Hello test!”。但是,我得到:

发送的请求是:

其中测试是有趣的部分。服务期待

没有命名空间(我用http://www.soapclient.com/测试了这个)

所以,问题是:如何在没有附加 tns 的情况下发送请求参数?(tns:name => name) 谢谢!

0 投票
0 回答
775 浏览

node.js - node-soap 请求正在发送空参数

我一直在尝试使用nodejs的node-soap库来使用soap服务,但是当我发送我的请求时,来自服务的响应是我请求中的flightNumber为null。

我还尝试以xml格式在soap UI中发送对我有用的相同请求,但我收到了相同的错误消息。

这是我的要求:

致电肥皂服务:

这个soap-node库中是否有可能导致我的请求发送空参数?我在发送之前调试了请求,并且对象格式正确并且具有所有值。也许这个库正在从 json 请求到 xml 进行内部转换,并且在这个过程中正在擦除值?或者我的请求可能缺少一些东西。

我很感激任何帮助。

谢谢 :)

0 投票
0 回答
1004 浏览

xml - node-soap 可以在单个 WSDL 中处理具有不同名称空间的多个模式吗?

我正在使用node-soap与现有的 SOAP API 进行交互。我遇到了多个模式和命名空间的问题,从我正在阅读的内容来看,这可能是一个已知问题。这是设置,我正在与一个具有两个模式的 WSDL 文件交互:

WSDL(为简洁起见删除了属性和元素):

重要的细节是这两个模式定义tns为不同的值。当 schema2 中的类型引用 schema1 ( cm:Operation) 中的元素时,它使用 cm 的显式命名空间(到目前为止很好),但是然后跳转到 schema1 中引用的类型,我们现在看到tns使用的命名空间,而在 schema1tns中是cm。这会导致问题,因为 node-soap 正在使用单个整体值tns,在这种情况下恰好是rm,并且在需要时它没有显式使用cm命名空间。

这是我看到问题的示例:

传递给 WSDL 方法的请求对象:

Node-soap 生成的请求 XML:

请求错误

我可以通过在 readme 中提到operator的请求对象中手动包含元素的 cm 命名空间来解决这个问题。我想知道在这种情况下是否有更好的方法来使用 node-soap,因为所有必需的信息都在 WSDL 中指定,或者我遇到了 node-soap 关于命名空间的问题之一?

这是与解决方法相同的请求对象:

具体细节:这是我正在使用的 WSDL。我在使用mutate操作时遇到了这个问题,它是operator命名空间不正确的元素。

0 投票
1 回答
1050 浏览

node.js - 节点 SOAP 标头问题

我需要<soap:Header>在某个属性名称“RequestHeader”下包含身份验证内容,例如<soap:Header><RequestHeader></RequestHeader></soap:Header><soap:Body>

但不幸的是,node-soap 把它放在里面<soap:Body>。所以我看到的是<soap:Header></soap:Header><soap:Body><RequestHeader>

问题是,我如何将其移至soap:Header?wsdl 在这里可能有问题,但目前无法修复它。

从 wsdl 角度看,这些是 wsdl 的片段,很明显 wsdl 声明 RequestHeaderElement 应该在标题中,我想知道为什么它被扔到正文中?

<wsdl:input name="SendSms"> <soap:header message="tns:SendSms" part="Headers" use="literal" /> <soap:body parts="Parameters" use="literal" /> </wsdl:input>

<wsdl:message name="SendSms"> <wsdl:part element="ns1:RequestHeaderElement" name="Headers" /> <wsdl:part element="tns:SendSmsRequestElement" name="Parameters" /> </wsdl:message>