Erro de upload de imagem no Firefox do MacOS

Tentei carregar imagens pelo Firefox no MacOS, tanto por captura de tela/colar quanto por upload de imagem, e ambos me mostram que a imagem está sendo carregada:

Mas depois me mostram que a imagem falhou:

(Postei isso pelo Chrome e está funcionando, também funciona no DiscourseHub no iOS).

Alguma ideia do que pode estar acontecendo no FF no MacOS?

1 curtida

Qual versão exata do Firefox você está usando? cc @martin

Algum erro no seu console?

(sem reprodução no Firefox Windows 95.0.2)

1 curtida

Firefox 95.0.2 (64-bit)…(no MacOS 10.14.6)

[Uppy] [20:14:42] Falha ao carregar Screen Shot 2021-12-21 at 3.14.08 PM.png AwsS3/Multipart: Não foi possível ler o cabeçalho ETag. Isso provavelmente significa que o CORS não está configurado corretamente no Bucket S3. Veja https://uppy.io/docs/aws-s3-multipart#S3-Bucket-Configuration para instruções. _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
    (Assíncrono: callback de promessa)
    z _vendor-0d13dafa62355d23ad44f16cc044a987.js:6770
    z _vendor-0d13dafa62355d23ad44f16cc044a987.js:6769
    (Assíncrono: callback de promessa)
    z _vendor-0d13dafa62355d23ad44f16cc044a987.js:6769
    F _vendor-0d13dafa62355d23ad44f16cc044a987.js:6757
    (Assíncrono: callback de promessa)
    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
    (Assíncrono: callback de promessa)
    r _vendor-0d13dafa62355d23ad44f16cc044a987.js:6802
    s _vendor-0d13dafa62355d23ad44f16cc044a987.js:6804
    (Assíncrono: callback de promessa)
    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
    (Assíncrono: callback de promessa)
    value _vendor-0d13dafa62355d23ad44f16cc044a987.js:6926
    scheduledAutoProceed _vendor-0d13dafa62355d23ad44f16cc044a987.js:6948
    (Assíncrono: manipulador setTimeout)
    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
1 curtida

Apenas confirmando, isso está acontecendo no meta ou no seu próprio site?

1 curtida

No meta, eu ainda não verifiquei o meu.

2 curtidas

Entendi, talvez tenhamos alguma regra CORS faltando que esteja sendo acionada apenas no Firefox para você?

Você tentou com imagens diferentes também?

1 curtida

Funciona na minha própria instância do Discourse.

2 curtidas

Sim, acabei de tentar agora com várias imagens da minha área de trabalho e de outras pastas no meu computador e a mesma resposta.

1 curtida

Estamos investigando, apenas confirmando se é “recortar-colar”, “arrastar e soltar”, botão de upload ou todos os 3?

Tentei as 3 permutações na minha máquina Windows, mas podemos precisar tentar novamente com uma conta padrão caso eu contorne as coisas.

1 curtida

apenas confirmando, isso é “copiar e colar”, “arrastar e soltar”, botão de upload ou todos os 3?

Parece ser todos os três.

1 curtida

E, caso haja algum componente de tema causando problemas, você pode tentar no modo de segurança?

1 curtida

Tentei todos os três métodos no modo de segurança e ainda estou recebendo o mesmo erro.

1 curtida

Hmm. Acabei de tentar todos os três em uma janela anônima e eles funcionaram. Talvez seja algo com meus cookies/cache no FF e não algo do seu lado.

(a seguinte imagem foi postada do FF anônimo):

1 curtida

\u003e AwsS3/Multipart: Não foi possível ler o cabeçalho ETag. Isso provavelmente significa que o CORS não está configurado corretamente no Bucket S3. Veja https://uppy.io/docs/aws-s3-multipart#S3-Bucket-Configuration para instruções.

Talvez isso pudesse ter sido apenas uma falha temporária do S3? O ETag deve ser retornado na resposta do upload de uma parte para o AWS, mas isso deve ser explicitamente habilitado por nós com uma configuração CORS no bucket:

Funcionou na versão 95.0.2 para mim no Linux.

1 curtida

O ETag deve ser retornado na resposta do upload de uma parte do upload para a AWS, mas isso deve ser explicitamente habilitado por nós com uma configuração CORS no bucket:

Hmm, parece que o meu também mostra isso (captura de tela do FF, mas estou fazendo o upload pelo Chrome agora):

Acabei de tentar todos os três em uma janela anônima e eles funcionaram. Talvez seja algo com meus cookies/cache no FF e não algo do seu lado.

Excluí os cookies do discourse.org e configurei minha Proteção Aprimorada Contra Rastreamento do FF basicamente para desativada, e ainda assim está acontecendo. Mas ainda funciona no modo anônimo no FF.

Continuarei experimentando do meu lado para ver se alguma extensão do FF ou algo assim está causando o problema.

1 curtida

Encontrei o culpado. Tenho o complemento ClearURLs FF instalado e ele tem uma opção de

Filtra cabeçalhos ETag de requisições (Veja também este artigo)

Desativei essa configuração e agora funciona, enviando a foto abaixo de uma janela FF não anônima.

Obrigado por me ajudar a depurar isso!

8 curtidas

Ótima pegada, obrigado @jimkleiber … avisarei a equipe caso isso aconteça novamente!

3 curtidas

Ah, de nada, @sam! Fico feliz em ter ajudado. Além disso, isso me ajudou a ver como é fácil no Discourse mudar uma conversa de um “bug” para “suporte” e, em seguida, mudar para um tipo de tópico solucionável depois do fato :pray:

4 curtidas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.