我在 MacOS 上的 Firefox 中尝试通过截图/粘贴和图片上传来上传图片,两者都显示图片正在上传:
但随后显示图片上传失败:
(我通过 Chrome 提交此问题并且可以正常工作,在 iOS 上的 DiscourseHub 上也可以正常工作)。
对于 FF 在 MacOS 上可能出现的问题有什么看法?
我在 MacOS 上的 Firefox 中尝试通过截图/粘贴和图片上传来上传图片,两者都显示图片正在上传:
但随后显示图片上传失败:
(我通过 Chrome 提交此问题并且可以正常工作,在 iOS 上的 DiscourseHub 上也可以正常工作)。
对于 FF 在 MacOS 上可能出现的问题有什么看法?
Firefox 95.0.2 (64 位)…(在 MacOS 10.14.6 上)
[Uppy] [20:14:42] Failed to upload Screen Shot 2021-12-21 at 3.14.08 PM.png AwsS3/Multipart: Could not read the ETag header. This likely means CORS is not configured correctly on the S3 Bucket. See https://uppy.io/docs/aws-s3-multipart#S3-Bucket-Configuration for instructions. _vendor-0d13dafa62355d23ad44f16cc044a987.js:6349:24
error _vendor-0d13dafa62355d23ad44f16cc044a987.js:6349
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6917
de _vendor-0d13dafa62355d23ad44f16cc044a987.js:6940
me _vendor-0d13dafa62355d23ad44f16cc044a987.js:6951
emit _vendor-0d13dafa62355d23ad44f16cc044a987.js:6311
emit _vendor-0d13dafa62355d23ad44f16cc044a987.js:6311
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6854
onError _vendor-0d13dafa62355d23ad44f16cc044a987.js:6710
Z _vendor-0d13dafa62355d23ad44f16cc044a987.js:6799
z _vendor-0d13dafa62355d23ad44f16cc044a987.js:6770
(Async: promise callback)
z _vendor-0d13dafa62355d23ad44f16cc044a987.js:6770
z _vendor-0d13dafa62355d23ad44f16cc044a987.js:6769
(Async: promise callback)
z _vendor-0d13dafa62355d23ad44f16cc044a987.js:6769
F _vendor-0d13dafa62355d23ad44f16cc044a987.js:6757
(Async: promise callback)
F _vendor-0d13dafa62355d23ad44f16cc044a987.js:6755
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6749
a _vendor-0d13dafa62355d23ad44f16cc044a987.js:6716
m _vendor-0d13dafa62355d23ad44f16cc044a987.js:6138
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6132
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6716
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6709
n _vendor-0d13dafa62355d23ad44f16cc044a987.js:6725
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6724
e _vendor-0d13dafa62355d23ad44f16cc044a987.js:6963
m _vendor-0d13dafa62355d23ad44f16cc044a987.js:83
_invoke _vendor-0d13dafa62355d23ad44f16cc044a987.js:80
t _vendor-0d13dafa62355d23ad44f16cc044a987.js:83
r _vendor-0d13dafa62355d23ad44f16cc044a987.js:6802
s _vendor-0d13dafa62355d23ad44f16cc044a987.js:6804
(Async: promise callback)
r _vendor-0d13dafa62355d23ad44f16cc044a987.js:6802
s _vendor-0d13dafa62355d23ad44f16cc044a987.js:6804
(Async: promise callback)
r _vendor-0d13dafa62355d23ad44f16cc044a987.js:6802
s _vendor-0d13dafa62355d23ad44f16cc044a987.js:6804
i _vendor-0d13dafa62355d23ad44f16cc044a987.js:6804
i _vendor-0d13dafa62355d23ad44f16cc044a987.js:6803
be _vendor-0d13dafa62355d23ad44f16cc044a987.js:6958
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6930
(Async: promise callback)
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6926
scheduledAutoProceed _vendor-0d13dafa62355d23ad44f16cc044a987.js:6948
(Async: setTimeout handler)
he _vendor-0d13dafa62355d23ad44f16cc044a987.js:6948
value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6870
_addFiles _application-1b8d860fd0cc6e174f8a7abbca67d655.js:5023
_run _vendor-0d13dafa62355d23ad44f16cc044a987.js:4034
_join _vendor-0d13dafa62355d23ad44f16cc044a987.js:4033
join _vendor-0d13dafa62355d23ad44f16cc044a987.js:3999
f _vendor-0d13dafa62355d23ad44f16cc044a987.js:2870
bind _vendor-0d13dafa62355d23ad44f16cc044a987.js:2873
n _application-1b8d860fd0cc6e174f8a7abbca67d655.js:4565
n _application-1b8d860fd0cc6e174f8a7abbca67d655.js:4565
只是确认一下,这是发生在 Meta 上还是发生在您自己的网站上?
在 Meta 上,我还没有查看我的。
我明白了,也许我们缺少某个 CORS 规则,而这个规则不知何故只在 Firefox 上触发了?
您是否也尝试过不同的图片?
在我的 Discourse 实例上可以正常工作。
是的,我现在尝试用我电脑桌面和其他文件夹里的各种图片进行测试,结果一样。
我们正在调查,只是确认一下是“复制粘贴”、“拖放”、上传按钮还是全部三者?
我在我的 Windows 机器上尝试了这三种组合,但我们可能还需要使用标准帐户重试,以防我绕过某些内容。
“确认一下,这是“复制粘贴”、“拖放”,上传按钮还是全部三种?”
似乎是全部三种。
另外,万一这里有某个主题组件在捣乱,您能否在安全模式下尝试一下?
我在安全模式下尝试了所有三种方法,但仍然收到相同的错误。
AwsS3/Multipart:无法读取 ETag 标头。这很可能意味着 S3 存储桶上的 CORS 配置不正确。请参阅 https://uppy.io/docs/aws-s3-multipart#S3-Bucket-Configuration 获取说明。
也许这只是临时的 S3 故障?ETag 应该在上传部分到 AWS 的响应中返回,但这必须通过存储桶上的 CORS 设置明确启用:
它在我于 Linux 上的 95.0.2 版本中刚刚可以正常工作。
ETag 应在将部分上传上传到 AWS 的响应中返回,但这必须通过我们在存储桶上设置 CORS 来显式启用:
嗯,在我这边似乎也显示了(这是 FF 的截图,但现在通过 Chrome 上传):
我在隐身窗口中尝试了所有这三个,它们都正常工作。也许是我的 FF 浏览器中的 cookie/缓存出了问题,而不是你那边的问题。
我删除了 discourse.org 的 cookie,并将我的 FF 增强跟踪保护设置为基本关闭,但它仍然发生。但在 FF 的隐身模式下仍然可以正常工作。
我会继续在我这边进行试验,看看是否是 FF 扩展或其他原因导致的问题。
罪魁祸首找到了。我安装了 ClearURLs FF 附加组件,它有一个选项:
过滤请求中的 ETag 标头(另请参阅这篇文章)
我禁用了该设置,现在可以正常工作了,下面是从 FF 非隐身窗口上传的照片。
感谢您帮助我调试这个问题!
精彩的捕获,感谢 @jimkleiber……如果再次出现,我会通知团队!
不客气,@sam!很高兴能帮到你。另外,这让我看到在 Discourse 上将对话从“bug”改为“support”,然后再将其切换为事后可解决的主题类型是多么容易 ![]()
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.