http://www.douban.com/group/topic/30890518/
各位豆友,最近用python开发一个小项目,调用服务商提供的webservice接口(http://202.105.212.146:8080/jboss-net/services/SendSMS?wsdl),接口函数sendSMSV2有一个参数callee,type="impl:ArrayOf_xsd_string" ,使用suds调用这个函数时,如何输入callee这个参数??
本人对soap和suds不熟,诚心向各位求教。
import suds
url='http://202.105.212.146:8080/jboss-net/services/SendSMS?wsdl'
client=suds.client.Client(url)
print(client)
======================print(client)===========================================
Suds ( https://fedorahosted.org/suds/ ) ?version: 0.4.1 jurko 3
Service ( SendSMSService ) tns="http://202.105.212.146:8080/jboss-net/services/SendSMS"
? ?Prefixes (2)
? ? ? ns0 = "http://202.105.212.146:8080/jboss-net/services/SendSMS"
? ? ? ns1 = "http://schemas.xmlsoap.org/soap/encoding/"
? ?Ports (1):
? ? ? (SendSMS)
? ? ? ? ?Methods (4):
? ? ? ? ? ? qryOffLineSMS(xs:string ucNumber,xs:string ucPinNum,xs:string rand,xs:string connID)
? ? ? ? ? ? qrySendSMSStat(xs:string ucNumber,xs:int smsFlag,xs:string connID)
? ? ? ? ? ? sendSMS(xs:string uc,xs:string pw,ArrayOf_xsd_string callee,xs:string isreturn,xs:string cont,xs:int msgid,xs:string connID)
? ? ? ? ? ? sendSMSV2(xs:string uc, ArrayOf_xsd_string callee,xs:int msgID,xs:string connID,xs:int charset)
? ? ? ? ?Types (49):
? ? ? ? ? ? ns1:Array
? ? ? ? ? ? ArrayOf_xsd_string
? ? ? ? ? ? ns1:ENTITIES
? ? ? ? ? ? ns1:ENTITY
=========================================
答案:
刚才测试成功,?
client = Client(wsdl_url)?
array = client.factory.create('ns1:Array')?
array.item = ['mobile1','mobile2']?
将array带入参数即可。