I can’t upload images to forum. The error I get is:
chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:735 [Uppy] [09:09:55] Failed to upload image.png AwsS3/Multipart: Could not read the ETag header. This likely means CORS is not configured correctly on the S3 Bucket. See AWS S3 Multipart — Uppy for instructions.
Which seems to indicate the uploader is misconfigured.
Console
vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:562 POST https://talk.observablehq.com/drafts.json 409 (Conflict)
send @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:562
ajax @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:538
g @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:3678
(anonymous) @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4456
e @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4456
m @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:3678
save @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:5704
saveDraft @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:5693
_saveDraft @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:2211
_shouldSaveDraft @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:2211
E @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:1450
i @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:1409
t.invoke @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:3964
t.flush @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:3956
t.flush @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:3970
n._end @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4033
_boundAutorunEnd @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:3984
Promise.then (async)
r @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:3940
o @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:2865
n._scheduleAutorun @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4047
n._ensureInstance @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4045
n.schedule @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4005
e.schedule @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:2863
(anonymous) @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:1410
(anonymous) @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:1409
e.flushAsyncObservers @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:1408
onEnd @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:2870
n._end @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4034
n.end @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:3989
n._run @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4035
n.run @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:3998
c @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:2871
(anonymous) @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:5260
(anonymous) @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:1622
e.emit @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:1622
value @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:611
ie @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:714
(anonymous) @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:688
Promise.then (async)
value @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:685
(anonymous) @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:704
setTimeout (async)
re @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:704
value @ chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:628
_addFiles @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:5275
n._join @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4034
n.join @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4000
f @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:2873
(anonymous) @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:2876
pasteEventListener @ discourse-12f37c23221e095835a1b2c1aee493a7ceafbfd2310c6d37526fcecfe3ca9632.br.js:5273
n._run @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4035
n._join @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4034
n.join @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:4000
f @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:2873
(anonymous) @ vendor-e89621627eade388a4af33c5cd5c77497b85b7439a6bc69da86bc28805aecf99.br.js:2876
chunk.920.745f5f3701905e2ba440-abb9da2c870bcf6448f9f5bac2957665d5eaf1275aded24e448bfcc37f666aca.br.js:735 [Uppy] [11:53:52] Failed to upload image.png AwsS3/Multipart: Could not read the ETag header. This likely means CORS is not configured correctly on the S3 Bucket. See AWS S3 Multipart — Uppy for instructions.
This is what appeared for just the upload event:
poll create-multipart.json
batch-presign-multipart-parts.json
update
5e9e71 aaad8ac097711c625b7fefa184.png?partNumber=1&…1fd8800730215ebdbf93f5b76d0d62b7bcee8de2176416714
poll
5e9e71 aaad8ac097711c625b7fefa184.png?partNumber=1&…1fd8800730215ebdbf93f5b76d0d62b7bcee8de217€4167
abort-multipart.json
update
poll