我如何在本地 运行 我的嵌入式 Shopify 应用程序

How can i run my embedded Shopify app locally

我创建了一个嵌入式 Shopify 应用程序,我正尝试在本地主机上 运行 它。

当我在 http://www.localhost:3000/login 上安装它时 它会将我重定向到管理面板,即使我将重定向 link 设置为 http://localhost:3000/auth/shopify/callback

我想知道如何让它在本地工作。

您应该使用如下服务:

  • Forward(编辑:Forward 已于 2020 年 1 月 1 日关闭)
  • Ngrok

这些服务允许您在 Internet 上拥有一个 url,它创建一个到您本地主机的隧道,这样您就可以使用 Shopify 测试您的 webhooks、嵌入式页面和代理页面。

您必须使用 Shopify 合作伙伴门户在您的 Shopify 应用上配置您选择的服务提供给您的url。

我个人使用转发。有了这个服务,你会得到一个像 yourname.fwd.wf 这样的域,这样你就可以拥有 https://youname.fwd.wf/auth/shopify/callback,它会创建一个到你本地主机的隧道。

你可以在不使用类似 ngrok 的服务的情况下通过代理和虚假 dns 记录的组合来实现这一点。

  1. 在 System32\drivers\etc\hosts 文件中添加 fake domin,如下所示:

    127.0.0.1 www.<your fake domain>.com

  2. 运行 本地代理服务如 npm local-ssl-proxy:

    local-ssl-proxy --source 443 --target 3000

  3. 在 Shopify 应用设置中将您的假域名列入白名单。

  4. 在环境文件中添加环境变量:

    NODE_TLS_REJECT_UNAUTHORIZED=0

以上内容适用于 Shopify AppProvider