python soappy добавить заголовок
У меня есть следующий пример кода PHP:
$client = new SoapClient("http://example.com/example.wsdl");
$h = Array();
array_push($h, new SoapHeader("http://example2.com/example2/", "h", "v"));
$client->__setSoapHeaders($h);
$s = $client->__soapCall('Op', $data);
Мой вопрос: каков эквивалент SOAPpy для части SoapHeader() и __setSoapHeaders()?
Связанный вопрос
1 ответ
Решение
Вот пример использования библиотеки suds (альтернатива SOAPpy). Предполагается, что пользовательский заголовок не определен в wsdl.
from suds.client import Client
from suds.sax.element import Element
client = Client("http://example.com/example.wsdl")
# <tns:h xmlns:tns="http://example2.com/example2/">v</tns:h>
tns = ("tns", "http://example2.com/example2/")
h = Element('h', ns=tns).setText('v')
client.set_options(soapheaders=h)
#
s = client.service.Op(data)