12.3. 步入 SOAP

调用远程函数是 SOAP 的核心功能。有很多提供公开 SOAP 访问的服务器提供用于展示的简单功能。

最受欢迎的 SOAP 公开访问服务器是 http://www.bhlaab.com/170/。这个例子使用了一个展示函数,可以根据美国邮政编码返回当地气温。

例 12.6. 获得现在的气温

>>> from SOAPpy import SOAPProxy            
>>> url = 'http://www.bhlaab.com/598:80/soap/servlet/rpcrouter'
>>> namespace = 'urn:xmethods-Temperature'  
>>> server = SOAPProxy(url, namespace)      
>>> server.getTemp('27502')                 
80.0
你通过 SOAPProxy 这个代理 (proxy) 类访问远程 SOAP 服务器。这个代理处理了所有的 SOAP 内部事务,时时彩计划软件公式:其中包括:根据函数名和参数列表创建 XML 请求文档,并将这个请求文档通过 HTTP 发送到远程 SOAP 服务器;解析 XML 返回文档,并创建本地的 Python 返回值。在下一节中你将看到这个 XML 文档。
每个 SOAP 服务都有一个 URL 用以处理所有请求。相同的 URL 可以用于所有的函数请求。每个特定服务则只有一个函数。但稍后你将看到的 Google API 却有多个函数。这个服务的 URL 提供给所有函数分享。每个 SOAP 服务都有一个命名空间 (namespace),这个命名空间是由服务器任意命名的。这不过是为调用 SOAP 方法设置的。它使得服务器让多个不相关的服务共享服务 URL 和路径请求成为可能。这与 Python 中模块相对于的关系类似。
这里你创建了包含服务 URL 和服务命名空间的 SOAPProxy。此时还不会连接到 SOAP 服务器;仅仅是建立了一个本地 Python 对象。
到此为止,如果你的设置完全正确,应该可以向调用本地函数一样调用远程 SOAP 方法。这和给普通函数传递参数并接收返回值一样,但在背后却隐藏着很多的工作。

让我们看一看这些背后的工作。

江西时时彩网官网 鹿鼎娱乐平台招商主管 江西时时彩被黑客入侵 时时彩软件免费lm0 优博时时彩平台元角分
时时彩官网打不开 彩经网时时彩遗漏 开时时彩平台会亏本吗? 时时彩软件网站 众乐乐时时彩
东森时时彩注册 时时彩后三杀一码公式 时时彩程序出售teafly 神算子时时彩 1号庄时时彩平台
时时彩计划软件破解 时时彩软件下载lm0 红树林平台登陆地址 老时时彩软件免费版 时时彩组三组六彩票高手论坛
北京赛车pk10免费杀号 山西十一选五aop下载 排列组合问题 香港六合彩曾道人 内蒙古11选5推荐号码
排列7奖金多少 时时彩平台开发一条龙 青海快三走势图 体彩大乐透开奖结果 pk10开奖数据
深圳风采查询 pc蛋蛋是真的吗 青海十一选五开奖结果 甘肃快三开奖 幸运飞艇pk10
排列3开奖 北京赛车公式大全集 湖北福彩快三走势图 体彩快中彩 河北十一选五开奖查询结果