我有一个SOAP请求,它采用以下XML主体
<x:Body>
<ser:CreateExportJobRequest>
<ser:ExportJobTypeName>Products</ser:ExportJobTypeName>
<ser:ExportColumns>
<ser:ExportColumn>Id</ser:ExportColumn>
<ser:ExportColumn>itemName</ser:ExportColumn>
</ser:ExportColumns>
<ser:ExportFilters>
<ser:ExportFilter id="updatedSince">
<ser:Text>2.0</ser:Text>
</ser:ExportFilter>
</ser:ExportFilters>
<ser:Frequency>ONETIME</ser:Frequency>
</ser:CreateExportJobRequest>
</x:Body>
我可以使用Boomerang发出成功的请求。在
现在我想在python代码中使用它。所以我试过了
^{pr2}$我有个错误
'list' object has no attribute 'id'
因为创建了一个有点错误的XML请求
<ns1:ExportFilters>
<ns1:ExportFilter>updatedSince</ns1:ExportFilter>
</ns1:ExportFilters>
所以我尝试了一些其他的东西,比如ExportFilter
inputElement.ExportFilters.ExportFilter = [{'id': 'updatedSince', 'text': updatedSince}]
以及
inputElement.ExportFilters.ExportFilter = [('updatedSince', updatedSince)]
以及
inputElement.ExportFilters.ExportFilter = [{'updatedSince': updatedSince}]
# says, Type not found: 'updatedSince'
以及
inputElement.ExportFilters.ExportFilter = [
{'key': 'updatedSince', 'value': {'key': 'eq', 'value': updatedSince}}
]
# says, Type not found: 'value'
但什么都没用。在
在设置ExportFilter之前,它的值的形式是
ExportFilters: (ExportFilters){
ExportFilter[] = <empty>
}
请帮忙。在
经过调试和一些suds代码,我找到了修复。在
修复程序的完整代码片段:
调试: 因为suds引发了
TypeNotFound
异常,所以我在suds中查找了raise TypeNotFound
的所有地方。我在PyCharm中添加了调试点。在我发现来自
^{pr2}$Typed
类的start
方法引发了我得到的错误。在所以从这个逻辑出发,我找到了解决办法。在
但是,如果有人为此建议一个标准的程序,那就太好了。在
相关问题 更多 >
编程相关推荐