Web服务 – 使用捕获的流量为现有的SOAP服务生成WSDL

前端之家收集整理的这篇文章主要介绍了Web服务 – 使用捕获的流量为现有的SOAP服务生成WSDL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要使用打印机的SOAP服务.有一个 Windows工具来访问这个服务,我用它来生成SOAP请求和我需要的重要功能的响应.

现在我应该使用Python为Linux编写客户端,我发现最简单的方法是将suds库与WSDL文件一起使用.但是我没有这个WSDL!

当我调查windows工具(看看可执行文件的hexdump)时,我得出的结论是,根本就没有WSDL文件.

现在我的问题是,有没有人使用“反向工程”SOAP服务,并且知道可以为现有服务创建WSDL文件而有用的工具? (Googleing还没有提出任何有用的东西).

解决方法

您提到这是打印机的SOAP服务.打印机的API是否记录在制造商的网站上?文档是否包含WSDL?你能从制造商获得WSDL吗?

如果你可以从制造商那里获得WSDL,那么你就完成了!

如果没有,那么你必须自己构建WSDL,因为我怀疑你可以找到一个生成WSDLs的SOAP样本的工具(当使用SOAP Web服务时,主要获得两种工具:从WSDL生成代码的那些工具WSDL从代码).

如果您熟悉SOAP,WSDL和XSD,则不难创建WSDL.你只需要一个文本编辑器,甚至可以加快WSDL editor的速度.

如果您对WSDL知识没有完全信任,仍然有一些工具可以让您获得完整WSDL的最大的方法.这是一种你可以做的方法

1 – 首先,您需要为SOAP有效载荷创建XML schema.为此,您可以找到工具,甚至some online.在您拥有模式之后,通过添加,更改或删除元素来调整您的需求.

2 – 现在可以使用XSD生成WSDL.有一个online tool这样做.它只需要请求/响应元素类型以请求/响应结束.确保您阅读说明.

您可以使用XSD文件,更改操作名称添加请求/响应后缀,并将其提供给WSDL Generator – Web Tool.你会得到你的WSDL.

现在调整这个WSDL你喜欢(删除请求/响应后缀,如果你不需要)然后…

3 – …确保你最终使用a valid WSDL.

4 – 现在您可以使用WSDL并使用像SoapUI这样的工具来生成示例请求和响应,只是为了验证您是否获得了正确的结果.

SoapUI消息是否匹配您开始的消息?如果是,您已经完成了,可以将WSDL提供给suds来创建Linux客户端.如果没有,请调整WSDL,直到得到您以后的结果.

猜你在找的HTML相关文章