我们有一个项目正在使用suds进行某些SOAP调用,直到今天我发现suds并未从导入的wsdl中解析出“ choice”对象时,该项目一直运行良好。有了这些信息,我一直在尝试寻找一种方法来注入使调用成功所需的xml
我这样打电话给suds客户
self.client.service.retrieveService()
suds正在向此样式调用
<SOAP-ENV:Envelope
<SOAP-ENV:Header>
<tns:wsHeader>
<wss>
<userName>xxx</userName>
<password>xxx</password>
</wss>
<messageType/>
</tns:wsHeader>
</SOAP-ENV:Header>
<ns1:Body>
<ns0:retrieveServiceRequest/>
</ns1:Body>
</SOAP-ENV:Envelope>
我已经使用suds工厂和wsdl来创建正确的输入,但是我不知道如何将这样的内容传递给客户端以用于主体:
(retrieveServiceRequest){
serialNumberWrapper =
(serialNumberWrapper){
serialNumber = "1234567890"
}
}
注意:我也尝试过创建自己的xml并使用__inject,但是suds似乎没有做任何事情或没有给出任何反馈(self.client.last_sent()返回None)。我可以提供正确地从wsdl中检索到的唯一参数作为客户端调用,并将其添加到suds调用中。
这时任何建议都将不胜感激,谢谢!
答案 0 :(得分:0)
因此,由于它阻止了一些错误修复,因此我继续进行此工作。将suds替换为suds_jurko,这只是一个仍在维护的叉子。