Bigcommerce - 根据ID列表请求产品

时间:2014-07-22 16:20:00

标签: bigcommerce

我正在使用Bigcommerce API为客户开发一个小型独立应用程序。我随时从Bigcommerce获取产品时将产品信息存储在本地数据库中,以减少延迟和网络负载。但是,产品可以在Bigcommerce上更改,虽然我的应用程序可以接受显示过时的信息,但我需要在某个时候更新我的本地缓存。我目前的计划是通过存储我请求产品的原始日期来完成此操作,之后我将需要执行另一个刷新缓存的请求。

我的问题是,如果有产品列表(包括他们的Bigcommerce ID),有没有办法通过一次调用Products Resource来请求更新所有产品?我可以致电:

向每个产品提出请求
GET {api}/v2/products/{id}

我还可以通过致电:

来请求不间断ID范围内的所有产品
GET {api}/v2/products?min_id={value}&max_id={value}

我能够成功调用上述两种方法,并且可以在循环中将它们链接在一起以获取所有产品。我想要做的是在一次通话中请求具有不相关ID的多个产品。所以,像这样:

//THIS IS NOT A REAL METHOD!
GET {api}/v2/products?id[]={value1}&id[]={value2}

我有什么方法可以做到这一点?还是有另一种解决方法,我还没有考虑过?我的主要要求是:

  1. 最小的API请求。我的应用程序很小,但我的客户的大型商店不是,我将处理成千上万的产品。我的CPU和网络资源有限,我根本无法处理那么多请求。
  2. 可扩展的。正如我所说,我的客户的商店很大,而且还在增长。我需要一个解决方案,其开销随着产品数量的增长而变得可控。
  3. 注意:我的应用程序是一个用Linux编写的小型Web应用程序,运行在Linux共享托管环境中。它是一种后台系统,在标准工作时间内,一次只能由单个用户使用。我还没有用PHP标记这个问题,因为我的问题是关于API,这是与语言无关的。

1 个答案:

答案 0 :(得分:1)

一个approch可以。

首先使用简单的产品电话从BigCommerce获取所有产品。

设置一些间隔时间以获取更新的产品列表。

您可以在产品API调用中使用min_date_modifiedmax_date_modifiedmin_date_createdmax_date_created来获取更新的产品详细信息。