擅长:python、mysql、java
<p>Spyne默认使用包装数组,因为这是XML世界中其他人的做法。在</p>
<p>包装数组:</p>
<pre><code><users>
<User>
<id>1</id>
<name>Batman</name>
</User>
<User>
<id>2</id>
<name>Robin</name>
</User>
</users>
</code></pre>
<p>裸阵列:</p>
^{pr2}$
<p>你也许可以理解为什么现在每个人都更喜欢包装数组了。这是一个惯例问题,但无疑是一个有益的问题。另外,不可能对非包装数组执行多态性。在</p>
<p>Spyne在默认情况下也使用包装函数,因为在裸模式下不可能有多个参数/返回值。在</p>
<p>现在答案是:</p>
<ul>
<li><p>这是一个包装好的数组:</p>
<pre><code>Array(Unicode)
</code></pre>
<p>下面是等效的裸阵列:</p>
<pre><code>Unicode(max_occurs='unbounded')
</code></pre>
<p>在2.12中,您还可以将<code>wrapped=False</code>传递给Array以获得裸数组。
例如:</p>
<pre><code>Array(Unicode, wrapped=False)
</code></pre></li>
<li><p>正如您所发现的,您可以获得传递<code>_body_style='bare'</code>的裸函数
到<code>@rpc</code>。</p></li>
</ul>
<p>一些SOAP客户机通过简单的试探法发现它是什么样的函数/数组,从而避免了使用魔术索引的麻烦。显然肥皂水不是其中之一。在</p>