我想向URL2方法发出一个SOAP请求(这将给出我想要的响应),其中包括以下结构。
<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',)
但它给了我&#39; suds.WebFault:服务器引发的错误:&#39;处理时出错。&#39;
我担心的是,这里method1使用URL1进行一些身份验证,但无法在SOAP请求中设置头。任何小的帮助都会很明显。谢谢!
答案 0 :(得分:0)
解析参数可能有问题。
使用以下命令替换最后一个命令时的输出结果如何:
print client
所以你的代码应该是这样的:
from suds.client import Client
client = Client(URL2)