为社区模块进行订单API集成。想避免重写 Mage_Sales_Model_Order_Api 模型,所以我实现了一个观察者 sales_order_collection_load_before 将结果设置为硬限制的事件。使用250,这是Shopify使用的极限,如果您要使用硬码的内容,似乎是一个理想的数字。

如果有API集成取决于API没有任何限制的顺序,那么它们可能会遇到问题。例如,如果某人的API集成订单API集成,每月(甚至每天,时间范围都是任意的),则将仅按250个订单。

虽然可以过滤结果设置在日期范围内,但您选择的任何日期范围本质上都是任意的。一天的订单价值可能太小了,导致较小商店的不必要的API命中率,对于较大的商店而言,它可能太大了。确实有必要能够将API响应限制在绝对数量的结果上,这就是Modern API所做的。

有人找到了任何好的解决方案吗?

有帮助吗?

解决方案

在评论中发现了一个修复程序,但我正在添加正式答案,因此可以将其标记为解决,并且人们将来搜索的人很容易看到。

Ashley Schroeder在Twitter上提供的解决方案

总结答案:

如果我们发现大反应,我们会逐步退缩。即尝试24小时,然后返回6*4小时。 ...
如果连接下降或变得太大,我们救出并退回,它是递归的,因此,如果4小时太大,我们再次分裂。

同样,对于获取历史数据,对于频繁的实时窗口通常是10-20分钟,虽然适用相同的分裂

许可以下: CC-BY-SA归因
scroll top