使用GetSellerList获取所有房源

问题描述:

目前我正在使用eBay交易API。 我想获得所有活跃的房源,但获得194. 我在我的卖家帐户中有2269个活跃房源。 这是我的代码。使用GetSellerList获取所有房源

$curl_resource = $this->initialize_requests("GetSellerList", false); 
     $xmlStr="<?xml version=\"1.0\" encoding=\"UTF-8\"?> 
<GetSellerListRequest xmlns=\"urn:ebay:apis:eBLBaseComponents\"> 
    <RequesterCredentials> 
    <eBayAuthToken>".$this->userToken."</eBayAuthToken> 
    </RequesterCredentials> 
    <ErrorLanguage>en_US</ErrorLanguage> 
    <WarningLevel>High</WarningLevel> 
    <GranularityLevel>Coarse</GranularityLevel> 
    <StartTimeFrom>2017-06-21T06:38:48.420Z</StartTimeFrom> 
    <StartTimeTo>2017-08-23T06:38:48.420Z</StartTimeTo> 
    <IncludeWatchCount>true</IncludeWatchCount> 
    <Pagination> 
    <EntriesPerPage>50</EntriesPerPage> 
    </Pagination> 
</GetSellerListRequest>"; 
     $response = $this->getResponse($curl_resource, $xmlStr); 
     $responseObject = simplexml_load_string($response); 
     print_r($responseObject); 

我想每一个电话后,我应该改变<startTimeFrom><startTimeTo>直到返回null或东西。 还是有更好的方法来做到这一点?

您需要在XML Feed中传递页码,因为eBay API每页仅返回200个列表,因此您需要循环访问API调用。

例如:

<?xml version="1.0" encoding="utf-8"?> 
<GetMyeBaySellingRequest 
    xmlns="urn:ebay:apis:eBLBaseComponents"> 
    <RequesterCredentials> 
     <eBayAuthToken>$this->auth_token</eBayAuthToken> 
    </RequesterCredentials> 
    <ActiveList> 
     <Sort>Title</Sort> 
     <IncludeNotes>FALSE</IncludeNotes> 
     <Pagination> 
      <EntriesPerPage>200</EntriesPerPage> 
      <PageNumber>$page_no</PageNumber> 
     </Pagination> 
    </ActiveList> 
    <HideVariations>FALSE</HideVariations> 
    <DetailLevel>ReturnSummary</DetailLevel> 
    <MessageID>$messageID</MessageID> 
    <Version>$this->api_version</Version> 
    <WarningLevel>High</WarningLevel> 
</GetMyeBaySellingRequest>​ 

易趣返回200个条目在单个呼叫的响应,所以你通过通过传递的PageNumber元件在分页索引而创建XML相同呼叫需要循环。

+1

是的,谢谢。我已经做到了。 –

+0

你有你的解决方案吗? – CedCommerce

+0

是的..我有解决方案。 –