【问题标题】:How to use Pagination filter in getOrders call (eBay Trading API)? [closed]如何在 getOrders 调用(eBay 交易 API)中使用分页过滤器? [关闭]
【发布时间】:2019-07-11 13:13:19
【问题描述】:

我编写 C# 应用程序,它从 Ebay 获得订单。

问题是我只能从 getOrders.ApiResponse.OrderArray 获得 100 个订单。

我有大约 1000 个订单。如何获得其他900?换句话说,如何使用 HasMoreOrders 调用和 Pagination.PageNumber 来遍历 ebay 订单?

【问题讨论】:

标签: c# pagination ebay-api


【解决方案1】:

在第一个 GetOrders 调用中,您可以在结果中找到项目和页面的总数

您应该遍历每个页面并使用不同的页码调用 GetOrders API

For(int index=0; index<Orders.Pages; index++)
{
// Build GetOrders Request with PageNumber - index

// Call GetOrders API with page number 

// Manipulate result
}

【讨论】:

    【解决方案2】:

    响应本身包含当前页码和总页数。您需要为每页执行一个新请求。

    看看我为从每个页面获取所有结果而编写的以下代码(这是使用 Finding API,但适用于所有其他 eBay API):

    var response = GetResults(findingService, request, currentPageNumber);
    if (response.ack == AckValue.Success)
    {
        var result = response.searchResult;
        if (result != null && result.count > 0)
        {
            // TODO process result
    
            for (var i = response.paginationOutput.pageNumber; i < response.paginationOutput.totalPages; i++)
            {
                currentPageNumber += 1;
    
                response = GetResults(findingService, request, currentPageNumber);
                result = response.searchResult;
    
                // TODO process result
            }
        }
    }
    
    private FindCompletedItemsResponse GetResults(CustomFindingService service, FindCompletedItemsRequest request, int currentPageNumber)
    {
        request.paginationInput = GetNextPage(currentPageNumber);
        return service.findCompletedItems(request);
    }
    
    private PageinationInput GetNextPage(int pageNumber)
    {
        return new PaginationInput
        {
            entriesPerPageSpecified = true,
            entriesPerPage = 100,
            pageNumberSpecified = true,
            pageNumber = pageNumber  
        };
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多