【问题标题】:Python Shopify App not loading in Safari iframePython Shopify 应用程序未在 Safari iframe 中加载
【发布时间】:2018-11-04 22:18:15
【问题描述】:

我目前正在开发一个 shopify 嵌入式应用程序,该应用程序在后端使用 python 烧瓶和 shopifyapi 库。 该应用程序运行良好,并且在除(macos 和 ios)safari 之外的任何浏览器中都可见。

我在使用 safari 时收到的错误如下:

Blocked mixed content http://app-domain.com/shopify?hmac=xxx..&protocol=https://&shop=shopify-store-name because 'block-all-mixed-content' appears in the Content Security Policy

在 shopify admin 中访问应用程序时,safari 会以某种方式尝试通过 http 加载某些内容,但是当使用 google chrome、firefox 等时,情况并非如此,一切正常。 Shopify 嵌入式应用程序将应用程序内容加载到 iframe 中,并在其中显示嵌入到 shopify 管理页面中。

当我查看 chrome/firefox 调试器中的 iframe src 值时,我可以看到它正确指向:

https://app-domain.com/shopify?hmac=xxx..&protocol=https://&shop=hopify-store-name

shopify合作伙伴设置中设置的应用重定向和地址也都是使用https的。

我已经尝试过但没有成功的是:

  • 在后端使用 SSLify 将任何请求重定向到 https
  • 启用 CORS

我正在使用:

  • Python 3.6.6
  • Flask 1.0.2
  • ShopifyAPI 3.1.0
  • Werkzeug 0.14.1

因为我只在使用 safari 时收到错误,所以我不知道可能是什么问题,希望有人可以帮助我解决这个问题。

最好的问候 多米尼克

【问题讨论】:

    标签: python iframe flask safari shopify


    【解决方案1】:

    看起来很简单...看看这个...

    https://ecommerce.shopify.com/c/api-announcements/t/breaking-change-to-safari-itp-2-0-540147

    Safari 和即将推出的 FF 将仇恨放在臭名昭著的隐私漏洞上……因此您将看到它如何影响嵌入式应用程序的 Shopify 模式。

    这是一个真正的黑客修复,你知道,它只会变得更糟:)

    【讨论】:

    • 看起来令人沮丧,但是为什么 safari 会创建这个混合内容错误?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-27
    • 1970-01-01
    • 2015-04-18
    • 1970-01-01
    相关资源
    最近更新 更多