2012-08-11 45 views
1

我可以給函數傳遞參數給SOAP客戶端在PHP這樣的(searchLinks是一個方法名):Python的WSDL函數的參數是不能接受的

$client = new SoapClient("https://linksearch.api.cj.com/wsdl/version2/linkSearchServiceV2.wsdl", array('trace'=> true)); 
$results = $client->searchLinks(array("developerKey" => $developerKey, 
              "token" => '', 
             "websiteId" => $websiteId, 
            "advertiserIds" => 'joined')); 

如果我想要做同樣的事情在Python中,如何我可以這樣做嗎?這是現在的代碼:

server=WSDL.Proxy(url) 
results=server.searchLinks({'developerkey':dev_key,'token':'','websiteId':website_id,'advertiserIds':'joined'}) 

當我嘗試運行此Python腳本時,它會引發錯誤。爲什麼它不像PHP那樣使用函數參數?

+1

你能在這裏複製錯誤嗎? – 2012-08-11 22:49:44

+0

你確定你正在python版本中傳遞正確的參數嗎?是否所有參數都應該在字典中傳遞? – 2012-08-12 00:19:02

回答

0

你在使用哪個庫,

假設你使用的是SOAPpy,你可以這樣做。

#!/usr/bin/python 

import SOAPpy 

url= 'https://linksearch.api.cj.com/wsdl/version2/linkSearchServiceV2.wsdl' 
proxy = SOAPpy.WSDL.Proxy(url) 
results=proxy.searchLinks({'developerkey': 'dev_key','token':'','websiteId': 'website_id','advertiserIds':'joined'}) 
+0

我使用了相同的庫,SOAPpy.WSDL,但仍然沒有提示,發生了什麼?你想看看使用泡沫的Python代碼 – 2012-08-11 23:38:19

+0

,我能解決我的問題,我想知道爲什麼我們不應該放「'引號。 – 2012-08-12 00:11:05