使用SUDS和python打印客户端时的空列表服务

时间:2016-04-26 07:36:11

标签: python django soap suds

当我使用SUDS打印时,我无法获得有关SOAP客户端的任何信息。

代码:

url = 'https://website.com/API/AuthenticationService.asmx'
headers = {'Content-Type': 'text/xml; charset=utf-8'}
client = Client(url, headers = headers)
print client

打印结果:

Suds ( https://fedorahosted.org/suds/ )  version: 0.6

我应该能够通过XML传递用户名和密码:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<Login xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://Iris.net">
<username>Username</username>
<password>Password</password>
</Login>
</s:Body>
</s:Envelope>

如果我尝试使用任何服务或工厂命名空间,我会收到错误。

尝试使用服务:

response = client.service.Login(username)

错误:

Exception: No services defined

还有工厂:

    login = client.factory.create('Login')

错误:

Exception: (Login, None, ), must be qref

1 个答案:

答案 0 :(得分:0)

似乎Web服务无法使用suds,因此我发现它可以使用xml请求。在这里找到正确的答案:Python: Making a request with suds