繁体   English   中英

亚马逊MWS / PHP /获得所有订单

[英]Amazon MWS / PHP / getting all orders

我正试图从亚马逊mws获得所有订单。 我知道我一次只能获得100次并且需要使用“nextToken2”来分页数据。 但是,我没有得到的是如何为请求设置setCreatedAftersetCreatedBefore ..我发现MWS希望设置两个值非常混乱。

我发现这段代码:

$t1 = date("c", time()-2*24*60*60);
$t2 = date("c", time()-1*24*60*60);
$request = new MarketplaceWebServiceOrders_Model_ListOrdersRequest();
$request->setSellerId(MERCHANT_ID);
$request->setMarketplaceId(marketplace_id);
$request->setCreatedAfter($t1);
$request->setCreatedBefore($t2);

它将在过去30天内获得所有订单。 但我如何获得所有订单?

要通过ListOrders获取所有订单,请将setCreatedAfter日期设置为最早订单之前的日期。 setCreatedBefore日期设置为当前日期/时间。 这只是您想要退回订单的日期范围。 您需要创建一个足以覆盖所有订单的范围。

第一次通话后,检查NextToken 如果它存在,您有更多订单,所以启动一个循环,直到NextToken为空。 一旦它是空的,你有所有订单。

注意限制问题。 您可能需要减慢操作速度。

另一种方法是使用Reports API ,它可以避免限制问题,但还有额外的设置步骤。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM