Как мне создать нестандартный тип с SOAPpy? - PullRequest
2 голосов
/ 23 сентября 2008

Я звоню веб-службе WSDL из Python, используя SOAPpy . Мне нужно позвонить методу Auth_login . У этого есть 2 аргумента - первый, строка, являющаяся ключом API; второй, пользовательский тип, содержащий имя пользователя и пароль . Пользовательский тип называется Auth_credentialsData, который содержит 2 значения в виде строк - одно для имени пользователя и одно для пароля. Как я могу создать этот пользовательский тип, используя SOAPpy? Я попытался передать список и словарь, ни один из которых не работает.

Код до сих пор:

from SOAPpy import WSDL

wsdlUrl = 'https://ws.pingdom.com/soap/PingdomAPI.wsdl'
client = WSDL.Proxy(wsdlUrl)

Пробовал оба:

credentials = ['email@example.com', 'password']
client.Auth_login('key', credentials)

и

credentials = {'username': 'email@example.com', 'password': 'passsword'}
client.Auth_login('key', credentials)

оба из которых дают ошибку проверки подлинности.

1 Ответ

0 голосов
/ 23 сентября 2008

Лучшим методом является использование мыльного модуля ZSI, который позволяет вам взять файл WDSL и превратить его в классы и методы, которые затем можно использовать для его вызова. Электронная документация на их сайте , но последнюю документацию легче найти в пакете с исходным кодом. Если вы устанавливаете в Debian / Ubuntu (имя пакета python-zsi), документация находится в / usr / share / doc / python-zsi в паре PDF-файлов, которые вы можете найти там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...