gpt4 book ai didi

python - SOAP - 使用 zeep 创建元素 (python)

转载 作者:太空宇宙 更新时间:2023-11-03 16:05:57 27 4
gpt4 key购买 nike

我必须在项目中使用 SOAP API。对于特定方法,我必须发送复杂类型。

这个复杂类型的声明如下:

<complexType name="specialList">
<sequence>
<element name=data" minOccurs="0"maxOccurs="unbounded">
<complexType>
<simpleContent>
<extension base="string">
<attribute name="key" type="string" use="required"/>
</extension>
</simpleContent>
</complexType>
</element>
</sequence>
</complexType>

这是一个例子:

<my_action type="specialList">
<data key="myKey">MyValue</data>
<data key="myOtherKey">MyOtherValue</data>
</my_action>

要访问 SOAP API,我使用 zeep (我尝试用 SOAP 水)。我首先想到的是检索我的“specialList”。

special_list = client.get_type('ns1:specialList')
my_action = special_list(data=[data_1, data_2])

但是我对“数据”类型有疑问。事实上,这种类型的“数据”没有被声明。我无法执行 client.get_type("ns1:data")。

我多次尝试创建一个简单的元素,但没有成功。您知道如何创建这种“特殊”数据吗?

提前谢谢。

西尔万

最佳答案

您可以尝试使用 AnyObject,如其文档中所示:http://docs.python-zeep.org/en/master/datastructures.html

所以在你的代码中:

从 zeep 导入 xsd

special_list = client.get_type('ns1:specialList')
my_action = xsd.AnyObject(special_list, special_list(data=[data_1, data_2]))

关于python - SOAP - 使用 zeep 创建元素 (python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39791979/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com