如何防止 Chrome 阻止 XLSX 下载?
How can I prevent Chrome from blocking a XLSX download?
最近对 Chrome 的更新已开始阻止来自我们网站的 XLSX 下载。
我已阅读 Chrome 的文档和指南,了解他们如何确定某物是否具有潜在危害,但没有提及如何解决除联系他们之外的问题。我们的文件和我们的网站符合他们制定的所有准则。他们的大部分文档都是基于可执行文件下载,因此不清楚这些信息如何影响简单文件下载。
站点和文件由使用 HTTPS 的同一主机提供。下载由链接到提供文件的 API 的锚标记驱动。
其他类似 API 服务生成的相同数据的 CSV 文件或 PDF 文件不受影响。
我还修改了文件生成以输出 XLS 文件而不是 XLSX,但这些文件也被阻止了。
以下是响应的 header,据我所知,关于配置或内容类型的所有内容都是正确的,所以我没有看到 chrome 使用它们来阻止文件.
Cache-Control: must-revalidate, private
Connection: keep-alive
Content-disposition: attachment; filename="test-file.xlsx"
Content-Type: application/xlsx
Date: Fri, 17 Jul 2020 16:04:41 GMT
Expires: -1
Server: nginx
transfer-encoding: chunked
X-DNS-Prefetch-Control: off
X-Frame-Options: SAMEORIGIN
我还验证了这些文件实际上并不危险,它们包含简单的 excel 数据,没有任何奇怪的东西被注入或被破坏。
我们也测试了各种下载方式,直接锚链接,表单帖子,blobs等等,总是被屏蔽。
是否有特定的 request/response header 或下载方法或标记可以阻止 chrome 阻止文件?
更新
我已确认此问题影响了 chrome 的 83.x 版本以及最新版本 84.0.4147.89
感谢@Alex,我们已确认此问题不存在于 Chrome 的 Linux 或 Windows 版本中。 OSX 仅。
今天早些时候问题消失了 20-30 分钟,然后又出现了。
用户报告问题一直存在到 Chrome 80+。
现在似乎已通过一些静默更新解决。
对于关注此直播的人,Chromium 团队正在跟踪并修复此问题:https://bugs.chromium.org/p/chromium/issues/detail?id=1106858
Comment 8 by vakh@chromium.org on Fri, Jul 17, 2020, 2:42 PM EDT
We're in the process of rolling out a fix for this issue so if you try now, it's likely you won't see a warning.
If you still do, please try again in approximately 30 minutes.
我们今天早些时候遇到了类似的问题。我们的网站使用 TAR 个文件来交换数据 (upload/download)。 HTTPS 用于所有通信。文件存储在 S3 上,用户被重定向到 S3 以下载文件。此设置在过去几年中一直运行良好。
今天早上大约 11:20am(美国东部时间)突然,大多数用户开始遇到下载问题 -- 下载的文件被 Chrome 阻止。这仅在 Chrome 和多个平台上发生(Windows 和 MacOS,我们没有任何 Linux 用户)。多个用户报告了该问题,实际上是大多数用户。从 v83 升级到最新的 v84 没有帮助。
然后大约 12:50pm(1.5 小时后),问题消失了。 10-20分钟后,它又出现了。看来问题又解决了
我从昨天开始就一直在 运行 我的 Chrome (v83)。在第一波“浪潮”中,我经常遇到这个问题,而不是根本看不到它。然后“第二波”开始了,又开始看到了,现在没了。
最近对 Chrome 的更新已开始阻止来自我们网站的 XLSX 下载。
我已阅读 Chrome 的文档和指南,了解他们如何确定某物是否具有潜在危害,但没有提及如何解决除联系他们之外的问题。我们的文件和我们的网站符合他们制定的所有准则。他们的大部分文档都是基于可执行文件下载,因此不清楚这些信息如何影响简单文件下载。
站点和文件由使用 HTTPS 的同一主机提供。下载由链接到提供文件的 API 的锚标记驱动。
其他类似 API 服务生成的相同数据的 CSV 文件或 PDF 文件不受影响。
我还修改了文件生成以输出 XLS 文件而不是 XLSX,但这些文件也被阻止了。
以下是响应的 header,据我所知,关于配置或内容类型的所有内容都是正确的,所以我没有看到 chrome 使用它们来阻止文件.
Cache-Control: must-revalidate, private
Connection: keep-alive
Content-disposition: attachment; filename="test-file.xlsx"
Content-Type: application/xlsx
Date: Fri, 17 Jul 2020 16:04:41 GMT
Expires: -1
Server: nginx
transfer-encoding: chunked
X-DNS-Prefetch-Control: off
X-Frame-Options: SAMEORIGIN
我还验证了这些文件实际上并不危险,它们包含简单的 excel 数据,没有任何奇怪的东西被注入或被破坏。
我们也测试了各种下载方式,直接锚链接,表单帖子,blobs等等,总是被屏蔽。
是否有特定的 request/response header 或下载方法或标记可以阻止 chrome 阻止文件?
更新
我已确认此问题影响了 chrome 的 83.x 版本以及最新版本 84.0.4147.89
感谢@Alex,我们已确认此问题不存在于 Chrome 的 Linux 或 Windows 版本中。 OSX 仅。
今天早些时候问题消失了 20-30 分钟,然后又出现了。
用户报告问题一直存在到 Chrome 80+。
现在似乎已通过一些静默更新解决。
对于关注此直播的人,Chromium 团队正在跟踪并修复此问题:https://bugs.chromium.org/p/chromium/issues/detail?id=1106858
Comment 8 by vakh@chromium.org on Fri, Jul 17, 2020, 2:42 PM EDT We're in the process of rolling out a fix for this issue so if you try now, it's likely you won't see a warning. If you still do, please try again in approximately 30 minutes.
我们今天早些时候遇到了类似的问题。我们的网站使用 TAR 个文件来交换数据 (upload/download)。 HTTPS 用于所有通信。文件存储在 S3 上,用户被重定向到 S3 以下载文件。此设置在过去几年中一直运行良好。
今天早上大约 11:20am(美国东部时间)突然,大多数用户开始遇到下载问题 -- 下载的文件被 Chrome 阻止。这仅在 Chrome 和多个平台上发生(Windows 和 MacOS,我们没有任何 Linux 用户)。多个用户报告了该问题,实际上是大多数用户。从 v83 升级到最新的 v84 没有帮助。
然后大约 12:50pm(1.5 小时后),问题消失了。 10-20分钟后,它又出现了。看来问题又解决了
我从昨天开始就一直在 运行 我的 Chrome (v83)。在第一波“浪潮”中,我经常遇到这个问题,而不是根本看不到它。然后“第二波”开始了,又开始看到了,现在没了。