2
我正在使用一个SOAP服务,它有一个用前导下划线定义的变量(一个会假设是私有的,但文档中有一个必须使用它们的具体示例)。在WSDL它看起来像这样:在Python中使用前导下划线的参数
<xsd:element maxOccurs="1" minOccurs="0" name="__encoded_query" type="xsd:string"/>
通过一些实验我已经确定的是,在我的client.service电话使用命名参数我可以给变量赋值为正常,除了那些具有前导下划线。
例如:
client.service.getRecords(name='server1')
产生正确的XML:
<ns1:getRecords>
<name>server1</name>
</ns1:getRecords>
但如果我尝试使用以下划线的参数:其产生
client.service.getRecords(__encoded_query='name=server1')
的XML根本不包含参数:
<ns1:getRecords/>
我不确定这是否是我不熟悉的语法细微差别(不管是Python还是泡沫),还是通过保护基于私有变量约定的变量来尝试“智能”。无论如何,这是使用此Web服务的文档化方式,因此我需要弄清楚如何使用泡沫来生成包括__encoded_query
块的XML。
谢谢,没有看到这个回复(或看过那张票)。 – valdarin 2012-12-11 16:13:21