例如,我有元素:
<element name="order_date" type="dateTime" minOccurs="1" maxOccurs="1"/>
'1.0'
对于那个领域,泽普仍然接受。以后我会明白
zeep.exceptions.Fault
因为SOAP服务器拒绝我的请求是因为这个错误的类型,因为它必须是ISO格式的日期
wsdl
归档
lxml
图书馆。这个很好用,但我不确定我是否正在使用
zeep
泽普
我目前的处理方法是:
from lxml import etree as ET
def get_xmlschema():
wsdl_file = ...
wsdl_tree = ET.fromstring(wsdl_file)
return ET.XMLSchema(wsdl_tree.find('.//schema:schema', namespaces=NAMESPACES))
def prevalidate_soap_message(client, operation, *args, **kwargs):
msg = client.create_message(client.service, operation, *args, **kwargs)
payload = msg.find('*/')
get_xmlschema().assertValid(payload)
这就是我发送有效载荷的方式:
client = zeep.Client(wsdl)
operation = client.service[operation_name]
payload = ...
result = operation(payload)