【问题标题】:BigCommerce API issue with page limit页面限制的 BigCommerce API 问题
【发布时间】:2013-10-04 14:31:15
【问题描述】:

我正在处理一项任务,我需要获取 bigcommerce 产品检查产品 url 以生成 sitemap.xml 文件

实际上网站上有 180000 种产品,所以我需要创建多个站点地图 xml 文件和一个索引 (sitemap.xml) 文件。

我完成了所有脚本来执行此操作,我在创建的每个站点地图 xml 文件中对 50000 个 url 进行分组。

当我运行它时,一旦它被正确执行并创建了 4 个站点地图文件。 一切正常。

但现在我无法执行它,因为运行一段时间后它给了我网络错误(类似于 bigcommerce 连接丢失)

问题是调用 bigcommerce api 时存在限制,因为我们需要向它发送一个页面编号,并且一次只能获取 250 个产品。

所以我要求 bigcommerce 支持人员扩展在单个 api 调用中获取产品的限制。他建议我使用循环并告诉我没有任何解决方案,我们一次只能获取 250 个产品。

在循环调用 api 的单个脚本中很难获取 180000 个产品。 但就我而言,我必须在单个脚本中执行此操作(我需要将该脚本设置为 cron 作业)。

是否有任何解决方案可以在没有任何网络错误的情况下完成此任务。 这里有大型商务专家吗?

任何帮助将不胜感激!

【问题讨论】:

  • 嘿伙计们.....任何 bigcommerce api 专家?

标签: php api curl bigcommerce


【解决方案1】:

我在尝试拉出我正在处理的商店中的所有产品时遇到了同样的问题, 就目前而言,他们确实有每个请求的最大产品数量,

您需要做的是使用过滤器,然后循环......我相信没有其他方法可以做到这一点。

$count = Bigcommerce::getProductsCount()/250;

for($x=1;$x<$count;$x++){
$filter = array("page" => $x, "limit" => 250);
$products = Bigcommerce::getProducts($filter);

// All your code goes here

}

我希望这能回答您的问题。 虽然这个回复有点晚,但它可能对某人有所帮助

【讨论】:

  • 我已经有了你上面提到的那个脚本,但是如果我们试图获取如此大量的产品,它真的很忙,顺便说一下我用我自己的替代方法解决了这个问题(将数据转储到db) 及其工作正常。
  • 不客气,Sunny,显然我也遇到了一些有趣的网络错误...您是否设法找出为什么会发生这种情况?我一直在联系 BC API 支持,但他们无法理解为什么我在发出 PUT 请求时不断收到该错误
猜你喜欢
  • 1970-01-01
  • 2019-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-15
相关资源
最近更新 更多