Shopify代理不适用于manifest.json(shopify和laravel)

时间:2019-02-08 13:49:21

标签: laravel shopify

我是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中没有任何错误

enter image description here

我正在使用Laravel Shopify软件包

据我所知,我猜我在代理配置上做错了事。

有人可以解决吗?

任何帮助都会感激

2 个答案:

答案 0 :(得分:0)

遵循的更好的方法可能是这样。首先,您可以使用您的应用访问商店主题的资产,然后将您的 manifest.json 文本文件作为资产上传。这意味着可以在Liquid主题中访问它,因此商店可以渲染它并使其有用。

第二,使用您的应用安装 custom.js 作为ScriptTag资产。这是完成运行自己的JS的常用方法。

App Proxy并非真正按照您的使用方式使用。

答案 1 :(得分:0)

我决定发布自己的个人信息(参考文献2:使用代理)

我的商店实际上是在使用免费试用版,而在免费试用版中,您不能禁用密码保护

如果启用了密码保护,并且您尝试在未登录的情况下访问代理URL,在这种情况下,Shopify将不允许访问。

购买计划完成后,一切正常