我的 Vue JS SPA + Express 服务器存在以下问题:
问题 #1-
我可以在开发商店上安装应用程序,计费工作完美,一旦我进入应用程序,API 功能运行良好,但我认为实际打开应用程序时遇到问题 - 很可能是我的嵌入式应用程序 SDK 的东西有问题和缺少重定向。
我目前的流程如下->
server.ngrok.io 是一个 Node/Express JS 应用程序
client.ngrok.io 是一个单独的客户端应用程序,使用 VueJS(无服务器端渲染)
用户在 server.ngrok.io/install 处输入应用
/install 构建 auth url 并将用户重定向到它
Shopify 重定向回 server.ngrok.io/finish_auth
/finish_auth 将临时令牌交换为永久令牌,将 perm 存储在我的数据库中,然后重定向到 /create_charge
/create_charge 和 /activate_charge 完美运行,重定向到 client.ngrok.io/
client.ngrok.io 在新窗口中打开,而不是在 iFrame 中。
我相信在这里的某个地方我需要像这里的文档中所述转义 iFrame -
Since the application is loaded inside an iframe it is critical that the initial OAuth request redirect escapes the iframe to make the requests. Shopify returns the
X-Frame-Options=DENY
header and prevents any Shopify admin pages from being loaded inside an iframe.
这是我的“新窗口”打开问题的原因吗?如果是这样,你能给我任何关于这个 iFrame 转义应该在我的流程中发生的地方吗?我找到的最好的来源是这篇 2014 年关于构建嵌入式 Shopify 应用程序的文章 - http://blog.codezuki.com/blog/2014/02/10/shopify-nodejs/但对我来说仍然很不清楚。
问题 #2 -
一旦我进入嵌入式应用程序(刷新通常有效),我在控制台中收到此错误 -
Shopify.AppMessenger received message null from unexpected origin https://client.ngrok.io ; expecting https://server.ngrok.io or subdomain thereof
该应用程序运行良好,我可以很好地进行 API 调用 - 但我觉得这也会导致问题。
任何帮助将不胜感激 - 我真的很想解决这个问题并让一些应用程序运行,但我正在努力解决这两个问题。