Shopify嵌入式应用在Firefox无法加载的排查方向咨询
检查应用返回的
X-Frame-Options响应头:Spring Boot或依赖组件可能默认设置该头为DENY或SAMEORIGIN,Firefox对这个头的优先级高于CSP的frame-ancestors规则。通过开发者工具查看应用响应头,若存在该头,需移除或调整为符合嵌入要求的配置(推荐直接移除,依赖CSP的frame-ancestors控制)。验证CSP的
frame-ancestors规则完整性:确保CSP配置中包含所有Shopify相关域名,比如*.myshopify.com、accounts.shopify.com,同时确认CSP头没有被Traefik等反向代理组件覆盖。排查Traefik反向代理的额外头设置:检查Traefik的中间件配置,是否自动添加了
X-Frame-Options或其他安全头,导致覆盖应用自身的嵌入权限设置。查看Firefox控制台的具体报错细节:除了请求失败记录,重点关注是否有
X-Frame-Options相关的拦截提示,比如“Refused to display ... because it set 'X-Frame-Options' to 'deny'”,以此定位是应用自身还是accounts.shopify.com的响应头问题。测试Firefox隐私设置影响:临时关闭Firefox的增强跟踪保护功能,若应用能正常加载,说明是隐私策略拦截了跨域iframe请求,需调整CSP或请求方式适配Firefox的隐私规则。
确认App Bridge初始化参数:检查App Bridge初始化时的
shopOrigin参数是否正确设置为当前Shopify商店的域名,错误的域名配置可能导致权限验证请求被拦截。
内容的提问来源于stack exchange,提问作者benzen

