2

我正在查看soaplib python 模块(它带有标准的ubuntu 9.04)。在过去的几年里,我广泛使用了 xmlrpclib,但现在我对肥皂很好奇。用soaplib 编写服务器很容易,我认为编写客户端应该更容易。

在我的不耐烦中,我找不到一种利用内省的方法。为了定义客户端( http://trac.optio.webfactional.com/wiki/Client) ,我真的需要描述服务器中的每一个方法吗?

我觉得这很难相信,但我找不到任何包含我的三个搜索词的重要网页:python soap introspect...

所以问题听起来:我可以使用 Python soaplib 访问我只知道 URL 的任何远程 Web 服务吗?我该怎么做?

是我还是图书馆遗漏了什么?

4

1 回答 1

1

如果我正确理解您的问题,您想为给定的 Web 服务生成客户端代码,而不直接在您自己的代码中定义该服务上可用的方法等?IE:您想自省服务并自动生成客户端。

如果是这种情况,那么答案是您需要使用soaplib 主干。具体来说,您将对最近提交的一个脚本感兴趣,该脚本允许生成 Python 类作为WSDL文件中描述的给定服务的客户端。soaplib 中有脚本允许以静态方式(生成 .py 模块并将其写入磁盘)和动态方式生成类,其中类仅在程序运行时存在。

希望有帮助。

于 2009-09-08T13:22:39.637 回答