同一主机上的多个 PWA 但不同的端口 - 相同的源行为

问题描述

我们正在通过从自定义端点加载清单和服务工作者将 SAP Fiori 启动板转换为 PWA。实际服务器(SAP 网关)由多个客户端(~租户)组成,我们使用 Web 调度程序(反向代理),允许用户通过将 HTTPS 端口映射到网关客户端来访问客户端特定的启动板。应用因客户端而异。

目标:为每个网关客户端提供单独的 PWA 安装。

问题:Android 上的 Chrome 在检查当前页面的 PWA 是否已安装(相同的源域)时会忽略端口。

示例:

实例 客户 主持人 页面网址
开发 100 dev.company.com:11443 /sap/bc/.../FioriLaunchpad.html
开发 200 dev.company.com:21443 /sap/bc/.../FioriLaunchpad.html

假设我们为 dev.company.com:11443(客户端 100)安装启动板 PWA,然后访问 dev.company.com: 21443(客户端 200)在 Android 上使用 Chrome 启动板。 Chrome 认为该页面已安装,因为有一个dev.company.com:/sap/bc/.../FioriLaunchpad.html 注册的 PWA,尽管端口和客户端的来源 200页面不同。因此,无法为客户端 200 安装单独的 PWA。

根据我的理解,PWA 应该(不知何故)origin dependent。我错过了什么?有没有办法强制执行某种同源行为?顺便说一句,在 Windows 上使用 Chrome 可以正常工作。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)