如何为WSDL创建数组并将其作为参数使用suds传递?

时间:2018-09-23 20:03:11

标签: python python-3.x soap wsdl suds

我想提出一个请求。这些是必需的参数。问题是我不知道如何创建一个数组,我可以传递一个参数来使用suds库发出请求。

class OffersViewAndOptions:
      @classmethod
            def doGetItemsInfo(
                    cls,
                    sessionHandle,
                    itemsIdArray,
            ):
                global client
                client = Client('https://webapi.allegro.pl/service.php?wsdl')
                response = client.service.doGetItemsInfo(
                    sessionHandle=sessionHandle,
                    itemsIdArray=itemsIdArray,
                )
                do_get_items_info = {
                    'itId': response.item[0].item[0].itId,
                }
                return do_get_items_info

这是我提出要求的课程:

array = [6688519219, 6688519219]
getitem = OffersViewAndOptions.doGetItemsInfo(session_handle_part, array)

这是我第一次尝试将数组作为参数传递

suds.WebFault: Server raised fault: 'Element '{https://webapi.allegro.pl/service.php}itemsIdArray': Character content other than whitespace is not allowed because the content type is 'element-only'.

以下是回复:

array = client.factory.create('array')
array.item = [7554257498, 6688519219]
request.option=array

第二,我在SO上搜索了可能的解决方案,发现了这一点:

suds.TypeNotFound: Type not found: 'array'

以下是回复:

{{1}}

此文档可能会有所帮助: https://allegro.pl/webapi/documentation.php/show/id,1093

0 个答案:

没有答案