2014-05-20 23 views
0

我想要一個SOAP請求(這將給我所需的響應)到URL2方法,其中包括以下結構。Suds客戶端實現多個不同的URL在單個調用,可能嗎?

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="URL1" xmlns:ns1="URL2"> 
<soapenv:Header> 
<ns:method1> 
<element1><your value1></element1> 
<element2><your value2></element2> 
<element3><your value3></element3> 
</ns:method1> 
</soapenv:Header> 
<soapenv:Body> 
<ns1:method2> 
<element1><your value1></element1> 
<element2><your value2></element2> 
<element3><your value3></element3> 
</ns1:method2> 
</soapenv:Body> 
</soapenv:Envelope> 

現在,爲了實現這一點,我有使用如下替代方法:

from suds.client import Client 

client = Client(URL2) 

client.service.method2(element1 = 'value1',element2 = 'value2',element3 = 'value3',) 

,但它給了我「suds.WebFault:服務器提出故障:‘故障發生時的處理’。

我的問題是,這裏的方法1使用URL1做一些身份驗證的東西,但無法在SOAP請求中設置標頭。任何小的幫助將是可觀的。謝謝!

回答

0

這可能是解析參數的問題。

如何輸出,當你substitue與下面的一個最後的命令:

print client 

所以,你的代碼應該是這樣的:

from suds.client import Client 
client = Client(URL2) 
相關問題