以协调的方式缓存来自外部API的数据

时间:2019-03-04 10:50:52

标签: api caching mocking external amazon-mws

我正在构建一个使用Amazon MWS API的应用程序。 该API限制了您点击它的频率。

我正在寻找一种可以充当反向代理,保存MWS API响应,并最终伪装成MWS API却从未使用过它的工具,该工具仅从缓存中返回响应。

某些工具可以做到这一点,但是我需要的却有些复杂。

说我要从亚马逊MWS请求报告:

  1. 我会打电话给RequestReport
  2. 我将获得一个ReportRequestId
  3. 我将开始服务器轮询GetReportRequestList,以了解报告请求的当前状态。报告请求可能会经历状态 SUBMITTED ,然后是 Done ,但也可以将其设置为 ERROR CANCELLED
  4. 当GetReportRequestList返回的报告请求状态为 Done 时,我终于可以调用GetReport并获取数据。

我要复制的是步骤3中的行为。

对于相同的请求,该外部API缓存应能够产生不同的结果:第一个响应应产生 SUBMITTED ,然后第二个响应应产生 DONE

我应该能够根据需要轻松配置这些流,并为第一个,第二个,第n个请求设置所需的响应。

我希望此工具需要最少的配置,我不想配置路由或其他任何东西,我希望它自动缓存所有内容,然后从缓存中返回所有内容,而不刷新它。

此外,我需要对响应中返回的内容进行这种级别的控制,具体取决于到那时为止完成的请求数。

0 个答案:

没有答案