Las cargas que implican preprocesamiento de JS del lado del cliente fallan en navegadores basados en Chrome

Siempre que intento adjuntar una imagen de tamaño “grande” (cualquier cosa superior a 1 MB, aparece; aún no lo he determinado con más precisión) a una publicación en un foro de Discourse mientras uso un navegador basado en Chrome para móviles (Chrome, Cromite, Brave), las cargas fallan. Funcionan en Firefox.

Supuestamente se inicia la carga y el mensaje de estado se queda atascado en “Procesando carga”, pero la carga nunca comienza (sin progreso) y las cosas permanecen atascadas allí para siempre. En algunos casos, la carga ni siquiera se inicia y la interfaz vuelve a la interfaz de edición como si la carga nunca se hubiera intentado.

SO: Pixel 9 Pro con GrapheneOS (Android 15). Se utiliza Adaway (bloqueo de anuncios basado en host) en modo VPN, pero parece no hacer ninguna diferencia (Firefox funciona independientemente de si está activo o no, los navegadores basados en Chrome fallan independientemente). También ocurre en cualquier enlace ascendente que he podido probar (todos los proveedores de datos móviles y WiFi, y dos proveedores de datos móviles diferentes).

He reducido el problema a que el script javascript de preprocesamiento de optimización de medios media-optimization-worker.js del cliente no se carga:

La solicitud fetch se cancela por una razón desconocida. Para imágenes más pequeñas, donde este media-optimization-worker no se utiliza debido a que ya son lo suficientemente pequeñas, todo funciona como se espera. En Firefox para móviles funciona en todos los casos (pero la interfaz de usuario de Discourse sigue muy estropeada en Firefox para móviles, así que…).

También he registrado el error en el repositorio de mi navegador: Uploads in Discourse involving client-side JS preprocessing do not start/work · Issue #1679 · uazo/cromite · GitHub.

Lo he probado en try.discourse.org y también ocurre allí. Cualquier indicio es bienvenido.

¿Hiciste también los cambios en nginx?

Lo estoy experimentando como cliente, no opero ninguna instancia de Discourse yo mismo. Pero dado que sucede tanto en la instancia de Discourse que uso como usuario (horlogeforum.nl, operada por un socio profesional de alojamiento de Discourse) como en try.discourse.org, asumiría que esas configuraciones están bien hechas.

Tampoco sucede en Firefox, así que si un cambio estuviera causando esto, esperaría que todo fallara…

Por lo que puedo ver en los registros de depuración, el problema parece ser que el propio script media-optimization-worker.js no se carga correctamente; la interfaz de usuario ni siquiera intenta una carga real.

Necesitas ponerte en contacto con el administrador del foro específico, entonces te sugiero, ya que el backend necesita ser configurado para acomodar tamaños de archivo grandes. Eso ayudaría a aislar el problema (no digo que no sea un problema).

De nuevo, también ocurre en try.discourse.org.
El hecho de que las cargas grandes se redimensionen en el cliente no es el problema en sí, ya que esto funciona bien en Firefox. El javascript que lo hace, falla al cargarse en los navegadores basados en Chrome.

1 me gusta

Ah, de acuerdo, lo entiendo.

La razón más común para que una solicitud se ‘cancele’ tan rápido es una extensión del navegador (por ejemplo, un bloqueador de anuncios, etc.). ¿Podrías verificar si tienes algo así habilitado? ¿Y también comprobar si el mismo problema ocurre en modo incógnito?

Para tu información, puedo subir imágenes grandes usando Chrome sin problemas. El archivo media-optimization-worker.js se carga correctamente.

3 Me gusta

Esa fue mi idea inicial también. Mi navegador preferido es Cromite, que de hecho incorpora bastantes cosas anti-anuncios y anti-rastreo, pero sucede también en Chrome de Google Play, sin modificar. Tengo AdAway en el teléfono, pero el problema persiste independientemente de si está activo o no.

No lo he intentado, lo probaré e informaré.

Para ser claros, ¿eso es usando Chrome en Android? Y si es así, ¿qué versión de Android? Chrome en escritorio tampoco tiene ningún problema aquí. Firefox también lo carga bien en todas partes.

1 me gusta

No hay problemas aquí usando Chrome 132.0.6834.79 en Android 14 para subir una o varias imágenes de 4.3 MB a try.discourse.org.

2 Me gusta