需要一个有效的商店查询参数

Expected a valid shop query parameter

我正在尝试使用 shopify-app-cli 创建新的 Shopify 应用程序,我设置了所有重定向链接和 .env 文件,但是当我 运行 Shopify 服务并且它显示就绪时 http://localhost:8081,我转到本地主机页面,它显示此错误:需要一个有效的商店查询参数。 这是什么意思?

我检查了我的 .env 文件是否有拼写错误,但一切都被复制了。

这意味着您错过了 yourshopname.myshopify.com。这在您验证您的应用时需要。

https://yourshopname.myshopify.com/admin/oauth/authorize?client_id='your_api_key'&scope='your_scopes_require'&redirect_uri='your_redirect_url'

有关详细信息,请阅读 here

就我而言,问题出在 Safari 中,值得检查 Chrome

同样的错误;能够通过执行 shopify create 后提到的 url 来修复它:

  • 运行 shopify 服务启动本地服务器

    然后,访问 https://partners.shopify.com/<ACCOUNT-ID>/apps/<APP-ID>/test 到 在您的开发商店安装

参见:https://github.com/Shopify/shopify-app-cli/issues/201#issuecomment-620286966

这可能是 ngrok URL 或您的 Shopify 应用中的第三方服务阻止连接的问题。

1-

您需要使用从 Shopify 服务器获得的 ngrok URL 在合作伙伴控制面板中设置您的应用,例如:

https://ea6214072ff3.ngrok.io

https://ea62d4072ff3.ngrok.io/auth/callback

查看此 github issue or this blog-post 了解更多信息。

2-

如果您在您的应用中使用第三方服务器,例如 MangoDB,您需要更改您的 DNS 服务器地址(一些 ISP 尽可能多地填充 DNS)。 在此示例中,我将使用 Google 的 DNS 8.8.8.8

Linux:

  1. 如果您已连接到 WiFi 网络,请单击“Wi-FI”选项卡。 否则,如果您有有线连接,请单击“网络” 选项卡

  2. Select 您要为其设置 DNS 名称服务器的连接 然后点击齿轮图标打开网络管理器。

  3. Select IPv4 设置选项卡。

  4. 禁用“自动”切换开关并输入 DNS 解析器 IP 地址 8.8.8.8

  5. 清除(刷新)DNS 现金(Ubuntu 18.04^ 需要)遵循 this article

Windows:

  1. 控制面板和select网络和共享中心。

  2. 单击“更改适配器设置”。

  3. 右键单击本地连接,然后单击 select 属性。

  4. select 选项 Internet 协议版本 4 (TCP/IPv4) 然后单击属性。

  5. 选择单选按钮使用以下 DNS 服务器地址并在 Preferred DNS server:

    中输入 8.8.8.8
  6. 清除(刷新)DNS 现金跟随this article