我是Shopify的初学者,在Shopify代理方面遇到了麻烦
前台商店: https://bhavin.myshopify.com
App Store: https://myapp.ngrok.io
(Laravel)
我想在前台存储中添加两个文件(自定义js和manifest.json)。
安装和身份验证工作正常
我要添加manifest.json
这样的内容
var link = document.createElement('link');
link.rel = 'manifest';
link.href = 'https://myapp.ngrok.io/manifest.json';
document.head.appendChild(link);
1。没有代理
manifest.json
文件已正确添加,但会引发类似错误
Access to resource at 'https://myapp.ngrok.io/manifest.json' from origin 'https://bhavin.myshopify.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
2。使用代理
Subpath prefix: apps
Subpath: cnv
Proxy URL: https://myapp.ngrok.io/proxy
现在我的manifest.json
文件路径是https://bhavincb.myshopify.io/apps/cnv/manifest.json
如果我在管理面板中登录,则网址工作正常
如果我未登录时打开该URL,则返回
This page isn’t working with HTTP ERROR 401
在我的前台存储中,加载清单文件时,它显示类似的内容(登录时)
Manifest: Line: 1, column: 1, Unexpected token.
manifest.json
中没有任何错误
我正在使用Laravel Shopify软件包
据我所知,我猜我在代理配置上做错了事。
有人可以解决吗?
任何帮助都会感激
答案 0 :(得分:0)
遵循的更好的方法可能是这样。首先,您可以使用您的应用访问商店主题的资产,然后将您的 manifest.json 文本文件作为资产上传。这意味着可以在Liquid主题中访问它,因此商店可以渲染它并使其有用。
第二,使用您的应用安装 custom.js 作为ScriptTag资产。这是完成运行自己的JS的常用方法。
App Proxy并非真正按照您的使用方式使用。
答案 1 :(得分:0)
我决定发布自己的个人信息(参考文献2:使用代理)
我的商店实际上是在使用免费试用版,而在免费试用版中,您不能禁用密码保护
如果启用了密码保护,并且您尝试在未登录的情况下访问代理URL,在这种情况下,Shopify将不允许访问。
购买计划完成后,一切正常