Ruby on rails Shopify API:Shopify缓存API查询吗?我怎样才能刷新一个?

Ruby on rails Shopify API:Shopify缓存API查询吗?我怎样才能刷新一个?,ruby-on-rails,shopify,Ruby On Rails,Shopify,我正在开发一个Shopify应用程序,由于该应用程序运行异常,我被卡住了 我调查了这个问题,发现用ShopifAPI保存产品,然后让Shopify读取刚刚保存的值仍然会输出过时的信息 几秒钟后再次读取产品将输出保存产品的真实值 Shopify似乎正在缓存一个产品的查询,在几秒钟内(在我的测试中,阈值似乎是7秒钟)仍然使用旧数据进行回复。 这是真的吗 在这种情况下,有没有办法告诉Shopify刷新产品的数据? 例如,在RubyonRails中,我可以在对象上使用“.reload”方法 我的问题是,

我正在开发一个Shopify应用程序,由于该应用程序运行异常,我被卡住了

我调查了这个问题,发现用ShopifAPI保存产品,然后让Shopify读取刚刚保存的值仍然会输出过时的信息

几秒钟后再次读取产品将输出保存产品的真实值

Shopify似乎正在缓存一个产品的查询,在几秒钟内(在我的测试中,阈值似乎是7秒钟)仍然使用旧数据进行回复。 这是真的吗

在这种情况下,有没有办法告诉Shopify刷新产品的数据? 例如,在RubyonRails中,我可以在对象上使用“.reload”方法

我的问题是,如果用户正在使用Shopify网站管理员并快速更新产品,比如说它正在输入不同变体的更新库存量,那么会快速调用产品更新webhook,而第二次webhook调用不会读取第一次webhook调用所做的更改


谢谢

也许shopify的人会有一个更好的答案,但我注意到了同样的行为——我的假设不是它正在缓存,而是更改已排队,因此在处理之前可能会有延迟。我通过给我的webhook处理增加延迟来解决这个问题——因此当webhook出现时,我的脚本会立即响应(使用200,并关闭连接),但在应用我的更改之前,会延迟操作,以使更改生效

感谢@meeech,我还取消了webhook,并在稍后使用延迟作业处理它们,我还为我的方法添加了8秒的睡眠时间,但这并不是问题的最佳解决方案……我正在等待Shopify的同事提供更好的解决方案。