SOAP.py 客戶機和服務器
SOAP.py 包含的是一些基本的東西。沒有 Web 服務描述語言(Web Services Description Language,WSDL)或者任何其它附加的東西,只有用 Python 實現的 SOAP 客戶機和服務器的透明支持。甚至這個包中的一個很好的功能也只是與基礎架構相關:SOAP.py 支持安全套接字層(SSL)用于加密的 SOAP 傳輸。為使用這個功能,您必須安裝 M2Crypto,M2Crypto 是一個庫,包含各種加密工具和格式,從 RSA 和 DSA 到 HTTPs、S/MIME 等等。在這一部分,我們不準備討論 SOAP.py 的 SSL 支持。
SOAP 操作摘要
目前為止,SOAP 實用程序好象仍是比較流行的使用 Python 的開放源代碼活動。下面是該項目的綱要以及它們目前的狀態。首先,參與者:
4Suite SOAP,由 Fourthought 管理 SOAPy,由 Adam Elman 管理 SOAP.py,Python 項目的一個 Web 服務項目 soaplib,由 Secret Labs 管理 Orchard,由 Ken MacLeod 管理 PySOAP,由 Dave Warner 管理4Suite SOAP 是我們自己的實現,我們在本專欄的前面三部分中使用過(請參閱 參考資料以獲得它的鏈接)。它目前仍在開發中。
SOAPy 是在 2001 年 4 月公布的,目前處于 alpha 的預備階段,但現在好象停止開發了。
SOAP.py 開發被凍結了。SOAP.py 這個項目是由 actzero 公司贊助的,而 actzero 卻不再從事這一行業了。正在邀請自愿開發/維護 SOAP.py 的組織。
soaplib 的開發好象也延緩了,考慮到 Secret Labs 這段時間所承擔的大量工作,或許就可以理解為什么會這樣了。這個瑞典的公司是由 Fredrik Lundh 掌管的,他在 Python 圈內是出名的“工作狂”,同時也是 Python Association 董事會的一名成員。Secret Labs 還開發 PythonWare(Python 的一個核心和重要的附加模塊);PythonWorks(一個領先的 Python IDE);Python Imaging Library 和許多其它好東西(日常 Python-URL Web 日志就是其中的一部分)。
Orchard 是一個數據管理框架,基本上是一種用一個公共接口管理不同數據格式的方法。它實現了一個 SOAP 客戶機作為在遠程過程調用中向 SOAP 服務器發送 Orchard 數據項的基本方法(被稱為節點)。
PySOAP 這個項目主要是想作為 Dave Warner 的 Church 管理套件的一部分,但它還從沒發行過任何文件,好象是一個毫無生氣的項目。
安裝
開始先下載分發包(在寫這篇文章的時候,SOAPpy 0.9.7 是最新的分發包),把文件解包,轉到結果目錄,并把文件 SOAP.py復制到自己傾向的位置。當然,這個“傾向”就是需要技巧的地方。由于這些 SOAP lib 中有很多都使用大小寫組合不同的“soap.py”作為模塊名,所以大家一定要小心。當然,UNIX 用戶只需關心大小寫是否精確匹配,但對于 Windows 用戶來說,甚至“SOAP.py”和“soap.py”之間的沖突也會帶來麻煩。Orchard 的 SOAP.py 也有一個容易發生沖突的名稱,但它有可能避開所有的問題,因為它的模塊聰明地放在了 Orchard 包中。
新聞熱點
疑難解答