您必须在发出请求之前设置 ShopifyAPI::Base.api_version

You must set ShopifyAPI::Base.api_version before making a request

我在按照 Shopify 的指南创建 Rails 应用程序时收到上述错误。 None 其他解决方案有效,我遵循了 Shopify 指南。

从 github 下载 Shopify Rails 应用程序,我看到他们的商店模型中有这个:

def api_version
   ShopifyApp.configuration.api_version
end

简而言之,您在没有打开有效会话的情况下进行了 API 调用。当您提供商店域、其 API 令牌以及您希望使用的 API 版本时,会话将打开。

如果您未能打开会话并拨打电话,您会收到该消息。因此,请检查您的代码,并确保您有一个会话。到处都在使用便捷方法,首先获取一个商店实例,然后使用方法with_shopify_session。然后你的问题就会消失。对于非典型用例,您也可以通过制作类似的方法 with_api_session 来模仿 Shopify 调用,允许您使用自己的代码运行,也许您没有直接安装应用程序,但仍然有 API 个密钥。想想私人应用程序。