1

我在 Safari 打开我的网络应用程序时遇到了一个非常奇怪的问题。

设置:我正在运行存储在 AWS 上的 S3 存储桶中的 Vuejs 应用程序。该应用程序由 API 网关公开。

问题:打开应用程序时,仅加载index.html和 favicon,但未加载其他资产。有时它们会出现在开发工具的“网络”选项卡中,并显示“加载资源失败”消息,但有时不会。

“解决方案”:当我使用http(不起作用)然后再次使用https打开应用程序时,可以以某种方式加载资源,即使在清除缓存重新加载时应用程序也能正常工作。

有谁知道如何克服这个问题?‍♂️</p>

4

1 回答 1

0

我有一个类似的问题(与 vue.js 和 amazon 无关,但只是主题:Safari 选择性地加载资源):Mac OS Safari 14(桌面版,我不知道移动版)不加载所有提到的css、js 和图像文件。

Safari 13 表现良好。其他浏览器(Chrome、Firefox)表现良好。所有文件都以相同的方式引用,使用相对 URL。

使用 Safari 14 时,有些已加载,有些未加载。缓存不是问题(我在加载页面之前使用“空缓存”)。看起来成功加载的文件是随机选择的(有时会加载相同的文件,有时不会加载)。

在 Develop 菜单的 Network 选项卡中,对于未加载的文件 Preview 说:“尝试加载资源时发生错误”,而在 Headers 的“Request”部分中,只有:Accept、Referer 和 User-Agent 行,而: 缺少 GET、Cookie、Accept-Encoding、Host、Accept-Language 和 Connection 行。响应说:“没有响应标头”。

在服务器的访问日志中,没有与未加载文件相关的行。

编辑:

原因: TLS 1.0

解决方案: TLS 1.2

于 2021-02-06T23:16:22.053 回答