簡體   English   中英

如何使用SUDS在soap請求中創建一個空數組

[英]How do I make an empty array in a soap request using SUDS

我正在發出的SOAP請求需要一個字符串數組,對於某些請求,它應該為空。 XML應該如下所示(在SoapUI中創建):

<ns0:instanceNames>
<!--Zero or more repetitions:--> 
</ns0:instanceNames>

因此,我嘗試使用SUDS來制作該xml元素,如下所示:

instanceNames = client.factory.create('ns2:ArrayOfstring')
instanceNames.string = []
result = client.service.GetStuff(instanceNames=instanceNames)

但是,當我發送請求時,該元素根本不在XML中。 沒有標簽,結果我的請求失敗。

但是,如果我添加一個元素,甚至是一個空字符串,都會出現周圍的數組標記,並且請求成功。 例如:

instanceNames = client.factory.create('ns2:ArrayOfstring')
instanceNames.string = [""]

產生:

<ns0:instanceNames>
<ns1:string></ns1:string>
</ns0:instanceNames>

但是我寧願沒有那個空的內部元素。

我在想什么嗎?

原來我缺少了一些東西:

instanceNames.string = [None]

甚至:

instanceNames.string.append(None)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM