WEB开发网
开发学院软件开发Python Python Web 服务开发者: Python SOAP 库,第 4 部... 阅读

Python Web 服务开发者: Python SOAP 库,第 4 部分

 2008-09-30 13:02:58 来源:WEB开发网   
核心提示:“Web Services for Python” 项目构成了 ZSI 和 SOAPpy 的保护伞,它提供了具有良好可维护性和高度可用性的 Web 服务工具,Python Web 服务开发者: Python SOAP 库,第 4 部分,在本专栏前面的几篇文章中我们已经清楚地了解了这些包: Pyt

“Web Services for Python” 项目构成了 ZSI 和 SOAPpy 的保护伞,它提供了具有良好可维护性和高度可用性的 Web 服务工具。在本专栏前面的几篇文章中我们已经清楚地了解了这些包:

Python SOAP 库,第一部分

Python SOAP 库,第二部分

Python SOAP 库,第三部分

在我们撰写了这些文章之后,这些包已经发生了重大的改进并且添加了一些特征。在本文中,我们将先看看 ZSI 中的这些新特征,以了解如何通过这些特征来获得具有更高的工业强度的公共 Web 服务。

ZSI 1.4.1

我们先看一下 ZSI 1.4.1,请在 Python 2.2.2 中对其进行测试。ZSI 中的最大更新是对 WSDL 的支持。其中有一个新的 ZSI 类 ServiceProxy ,您可以使用 WSDL 文件的 URL 来初始化它。文档指出:“使用 WSDL 实例来发送和接收消息”。如果在这个专栏中您遵循了 ZSI 的规范,您将记得 ZSI 是一种优秀的 Web 服务库,它遵循了某些更为严格的规则,但遗憾的是,需要做一些不确定的改动(并且您需要编写的代码可能比您想像的要多得多)才能让它处理常见的情形。

的确,ZSI 看起来可以处理任何 Web 服务。只不过,您可能会觉得宁可它不出现太多的变化,自己也不愿意编写各种各样的复杂代码来处理带有 类型代码(type codes)的结构。产生这种问题的根源在于 SOAP 消息结构试图结合 RPC 传统的精确性以及 XML 的灵活性。WSDL 的目标之一是提供充分的关于服务的消息协议的结构化描述,这样它就允许应用程序能够自动解决开发人员需要处理的问题。在 ZSI 中添加 WSDL 支持,使得开发人员不用关注 SOAP 消息的解释。不管 Web 服务是否使用位置参数、命名参数或者两者,也不管它是否使用简单的、复杂的或者自定义的数据类型,WSDL 都应该提供所需的信息。因而,正如您所期望的,我们不是在以前用过 ZSI 的玩具 Web 服务(比如 Captain Haddock Curser 或简单日历服务)上尝试 ServiceProxy ,而是在终于开始出现的基于 SOAP 的公共 Web 服务上尝试 ServiceProxy 。

1 2 3 4  下一页

Tags:Python Web 服务

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接