【问题标题】:SOAP call in nodejs without wsdl没有wsdl的nodejs中的SOAP调用
【发布时间】:2020-12-24 09:25:44
【问题描述】:
我有一个 NodeJS 应用程序,我应该通过soap调用使用Web服务(仅支持soap)。
最大的问题是,Web 服务在任何地方都没有 WSDL api 描述。所以我的问题是,我怎么能用 NodeJS 调用伺服方法,使用没有 WSDL 的 Soap。
我见过一些解决方案,例如使用 require 模块。安装相同(npm i 需要)。能够设置标题和其他选项,但不知道如何调用这些方法。
感谢您的帮助。
【问题讨论】:
标签:
javascript
node.js
web-services
soap
【解决方案1】:
在没有 WSDL 的情况下,你怎么知道调用的方法和类型以及一些参数和返回值?
SOAP 是一种自我描述的协议,这就是为什么您可以(并且应该)使用 WSDL 来获取某个服务提供给您的内容的完整描述。所有 SOAP 服务通常都有一个规则,您可以在服务 url 的末尾添加“?wsdl”(或类似的东西)来获取 WSDL。
您可以尝试手动构建 HTTP 请求,但这毫无价值,因为您将花费大量时间来实现所有方法调用并考虑参数类型、它们的限制和结构等。