需要使用XML和PHP使用eBay getsellerlist api函数提取所有产品

Pet*_*lor 2 php xml request ebay-api

我试图从用户的ebay帐户获取所有产品,但是当我运行我的代码时,我只得到几百个.我可以确认有2 000种产品.

如何在不使用开始和结束时间和日期参数的情况下提取所有产品?

如果我删除的代码行与<StartTimeFrom><EndTimeTo>它没有显示出产品的人.

$url = 'https://api.ebay.com/ws/api.dll';
$user_name  = "{username is in here}";
$auth_token = "{token is in here}";
for ($i = 1; $i <= 10; $i++) {
    $headers = array(
      'Content-Type: text/xml',
      'X-EBAY-API-COMPATIBILITY-LEVEL:877',
      'X-EBAY-API-DEV-NAME:177b0624-2d99-428a-8659-7404d9043c76',
      'X-EBAY-API-APP-NAME:PeteNayl-d415-49bb-a950-495237441c1c',
      'X-EBAY-API-CERT-NAME:6c336965-1a1f-4d11-94b1-3843c3ac995b',
      'X-EBAY-API-SITEID:3',
      'X-EBAY-API-CALL-NAME:GetSellerList'
    );

    $xml = '<?xml version="1.0" encoding="utf-8"?>
    <GetSellerListRequest xmlns="urn:ebay:apis:eBLBaseComponents">
    <RequesterCredentials>
    <eBayAuthToken>'.$auth_token.'</eBayAuthToken>
    </RequesterCredentials>
    <Pagination ComplexType="PaginationType">
        <EntriesPerPage>200</EntriesPerPage>
    <PageNumber>'.$i.'</PageNumber>
    </Pagination>
    <StartTimeFrom>2014-06-01T21:59:59.005Z</StartTimeFrom>
    <StartTimeTo>2014-06-02T21:59:59.005Z</StartTimeTo>
    <EndTimeFrom>2014-09-29T21:59:59.005Z</EndTimeFrom>
    <EndTimeTo>2014-09-30T21:59:59.005Z</EndTimeTo>
    <DetailLevel>ItemReturnDescription</DetailLevel>
    <UserID>'.$user_name.'</UserID>
    </GetSellerListRequest>';

...
Run Code Online (Sandbox Code Playgroud)

Dav*_*ler 7

您不能在没有时间范围的情况下发送请求,并且from和to之间的时间段不能超过120天.如果您想要撤回所有产品,则必须向GetSellerList发出多个请求,其中每个请求涵盖特定的120天期限.

可以在eBay文档中找到有关请求中EndTimeFromStartTimeFrom字段的信息.请注意,文档没有说明这些字段是必需的,但是您没有在请求中包含它们,将在响应的Ack字段中返回Failure值.