suds, python soap client

因為公司接了個案子, 其中大部份都是接另一家公司所謂的 “web service", 不過對方 detail 也沒說, 就只有 “web service" 一詞, 這詞未免也太廣泛了吧! 然後又因為對方東西還沒開發出來, 所以連 endpoint 都沒給, 連猜都沒得猜, 打電話一問說是 wsdl? 對方工程師問了一下才回答說是 wsdl 沒錯。

以前在 PHP 是用 NuSOAP 來處理, 後來用 PHP 內建的 SOAP, 其實都還挺方便的, 不過現在換到 python, 所以找了一下 SOAP 相關的資料, 找到 Suds 還挺直覺的, 所以記一下。 另外, 取名 Suds 也還真有意思, 肥皂水 (笑)

使用方式大概如下:

from suds.client import Client

url = 'http://localhost:7080/webservices/WebServiceTestBean?wsdl'  
client = Client(url)  

然後就可以直接透過 client 來呼叫功能了, 像是

result = client.service.getPercentBodyFat('jeff', 68, 170)  
print result  

想要知道有哪些功能可以呼叫, 直接

print client  

就會列出定義, 真是好物一個阿!! 不過不知道其他好用的 SOAP client 呢?

tzangms

Read more posts by this author.

Subscribe to Oceanic / 海海人生

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!