问题描述
我在尝试完成官方 shopify tutorial about developing shopify app 时遇到错误。
我一直在一步一步地遵循教程,但即便如此,还是遇到了问题,抛出错误,即我的配置文件无效,因为它不包含主机。
driver = webdriver.Chrome(path)
driver.get(url)
elem1 = driver.find_elements_by_tag_name('img')
for j,i in enumerate(elem1):
if j < 1:
src = i.get_attribute('src') # grab product image
name = i.get_attribute('alt') # grab product nanme
try:
if src != None:
src = str(src)
urllib.request.urlretrieve(src,name+'.jpg') # save image
else:
raise TypeError
except Exception as e: #catches type error along with other errors
print(f'fail with error {e}')
配置文件的控制台提供了正确的 shopOrigin。 如果有人帮忙,我将不胜感激
解决方法
目前需要使用 App Bridge 版本 2,就像应用审核团队指出的那样:
确保您的应用在 Shopify App Bridge 2.0 版上以嵌入 您在商家管理员中的应用...
所以,我所做的是在我的数据库中保留商店名称(例如:toys.myshopify.com),编码为 base64 并在需要时发送类似 "host" 查询参数。>
const host = Buffer.from(`${shop}/admin`).toString('base64');
ctx.redirect(`${process.env.HOST}?shop=${shop}&host=${host}`);
注意我是如何在商店值后添加“/admin”的,这是很重要的一步,否则会出现 404 错误(找不到页面)。
,所以我能够通过更改应用程序桥的版本来解决问题,我使用的是我认为有错误或无法配置的最新版本,
"@shopify/app-bridge-react": "^2.0.2" [NOT WORKING]
"@shopify/app-bridge-react": "^1.30.0" [CURRENT WORKING]
,
按照此链接中提到的步骤 How to fix App Bridge error: host must be provided 帮助我在不降级版本的情况下解决了问题