返回介绍

12.5. WSDL 介绍

发布于 2019-09-14 13:30:46 字数 1036 浏览 938 评论 0 收藏 0

12.5. WSDL 介绍

SOAPProxy 类本地方法调用并透明地转向到远程 SOAP 方法。 正如你所看到的,这是很多的工作,SOAPProxy 快速和透明地完成他们。它没有做到的是提供任何方法自省的手段。

试想一下:前面两部分所展现的调用只有一个参数和返回的简单远程 SOAP 方法。服务 URL 和一系列参数及它们的数据类型需要被知道并跟踪。任何的缺失或错误都会导致整体的失败。

这并没有什么可惊讶的。如果我要调用一个本地函数,我需要知道函数所在的包和模块名(与之对应的则是服务 URL 和命名空间)。我还需要知道正确的函数名以及其函数个数。 Python 精妙地在不需要明示类型,但我还是需要知道有多少个参数需要传递,多少个值将被返回。

最大的区别就在于内省。 就像你在 第 4 章 看到的那样, Python 擅长于让你实时地去探索模块和函数的情况。你可以对一个模块中的所有函数进行列表,并不费吹灰之力地明了函数的声明和参数情况。

WSDL 允许你对 SOAP 网络服务做相同的事情。 WSDL 是 “网络服务描述语言(Web Services Description Language)”的缩写。 尽管是为自如地表述多种类型的网络服务而设定,却也经常用于描述 SOAP 网络服务。

一个 WSDL 文件不过就是一个文件。 更具体地讲,是一个 XML 文件。通常存储于你所访问的 SOAP 网络服务这个被描述对象所在的服务器上,并没有什么特殊之处。 在本章稍后的位置,我们将下载 Google API 的 WSDL 文件并在本地使用它。 这并不意味着本地调用 Google, 这个 WSDL 文件所描述的仍旧是 Google 服务器上的远程函数。

在 WSDL 文件中描述了调用相应的 SOAP 网络服务的一切:

  • 服务 URL 和命名空间
  • 网络服务的类型(可能还包括 SOAP 的函数调用,正像我所说过的,WSDL 足够自如地去描述网络服务的广泛内容)
  • 有效函数列表
  • 每个函数的参数
  • 每个参数的类型
  • 每个函数的返回值及其数据类型

换言之,一个 WSDL 文件告诉你调用 SOAP 所需要知道的一切。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文