Web Worker indisponible ? Dépannage par plateforme et environnement
Symptôme observé
Un avertissement jaune apparaît en bas de l'interface Any3D : « Le navigateur actuel ne supporte pas le Web Worker ». La prévisualisation peut rester fonctionnelle, mais le traitement de gros fichiers risque de bloquer la page. Les chemins Worker pour la compression de textures et la conversion d'images en modèle ne sont pas activés.
Le Web Worker permet d'exécuter des calculs lourds dans un thread en arrière-plan. Any3D s'appuie sur le trio Worker + OffscreenCanvas + createImageBitmap pour la compression de textures et certaines conversions.
Causes courantes
| Cause | Scénario typique |
|---|---|
| Contexte non sécurisé | Ouverture via file://, page intranet HTTP (non localhost) |
| Navigateur / WebView obsolète | Navigateur système ancien, page intégrée dans une application |
| Restriction CSP | iframe portail d'entreprise, injection de worker-src par client zero trust |
| Blocage par extension | Plugin de confidentialité empêchant Worker ou URL blob: |
| Anomalie de cache réseau | Proxy/VPN renvoyant un script Worker incomplet |
| Supervision de l'appareil | Profil géré désactivant les scripts en arrière-plan |
Dépannage par plateforme
Windows
- Accédez exclusivement via HTTPS (
https://any3d.cc), évitez les fichiers HTML locaux. - Stratégie d'entreprise Edge : vérifiez dans
Computer Configuration → Administrative Templates → Microsoft Edgesi des restrictions s'appliquent aux Workers ou aux cookies tiers (cela peut affecter indirectement le chargement de certains Workers). - Sécurité familiale Windows : les restrictions Web pour les sous-comptes peuvent empêcher la création de Workers.
macOS
- Safari / Chrome nécessitent macOS 12+ et une version récente du navigateur.
- Temps d'écran → Contenu et confidentialité → l'activation de « Limiter les sites pour adultes » ou d'un filtre personnalisé peut bloquer par erreur les domaines de scripts Worker.
- Si un MDM d'entreprise désactive les capacités de script au-delà du « tracking intersites », contactez le service informatique.
Linux
- Vérifiez que l'URL d'accès utilise HTTPS ; le proxy Squid d'entreprise doit autoriser les requêtes liées à
blob:etworker-src.
iOS / Android
- N'effectuez pas de traitement de gros fichiers dans les navigateurs intégrés de WeChat/DingTalk ; utilisez le navigateur système.
- Le mode basse consommation iOS ne désactive généralement pas les Workers, mais une version ancienne de WebKit peut manquer des API — maintenez le système à jour.
- Une version WebView Android trop ancienne (WebView système non mis à jour) rend le Worker indisponible : mettez à jour « Android System WebView » via la Play Store.
Réseau, VPN et intranet d'entreprise
| Scénario | Explication |
|---|---|
| VPN d'entreprise | Certains VPN imposent une déchiffrement HTTPS et injectent un CSP ; l'IT doit autoriser les Workers |
| Portail SSO intranet dans un iframe | Le CSP de la page externe peut interdire worker-src blob: ; configurez la page intégrée séparément ou ouvrez Any3D dans un nouvel onglet |
| Proxy inverse | Une mauvaise configuration de Nginx/gateway peut entraîner un type MIME incorrect pour le script Worker |
| Filtrage DNS parental sur routeur | Rare pour les Workers, mais si le site entier est dégradé en miroir HTTP, le Worker cessera de fonctionner |
Autotest : déconnectez le VPN, passez en 4G/5G (point d'accès mobile) et vérifiez si l'avertissement disparaît.
Référence CSP pour les entreprises (pour l'IT)
Si Any3D est intégré via iframe, autorisez :
worker-src 'self' blob:;
script-src 'self' 'unsafe-eval' blob:;
Les utilisateurs individuels n'ont pas besoin de modifier manuellement le CSP.
Correction pas à pas (général)
- Confirmez l'accès en HTTPS, actualisez la page (Ctrl+F5 / Cmd+Shift+R).
- Utilisez une fenêtre sans historique pour écarter les extensions.
- Mettez à jour le navigateur et le WebView système (Android).
- Ouvrez Any3D directement dans un nouvel onglet pour éviter l'intégration dans un iframe de portail d'entreprise.
Autotest rapide
typeof Worker !== "undefined"
Le retour true indique uniquement que l'API existe ; Any3D nécessite également OffscreenCanvas et createImageBitmap pour emprunter le chemin complet du Worker.
Impact en l'absence de Worker
| Fonctionnalité | Impact |
|---|---|
| Compression de sommets (Draco, etc.) | Généralement toujours disponible (thread principal + WASM) |
| Compression texture / KTX2 | Chemin Worker indisponible, risque de ralentissement sur gros fichiers |
| Conversion image en modèle | Peut être dégradé ou les performances chuter considérablement |
Résumé
L'avertissement sur le Web Worker provient souvent d'un manque HTTPS, d'un WebView obsolète, d'un CSP/VPN d'entreprise ou d'un blocage par extension. Mettez à jour le navigateur selon la plateforme, testez avec un autre réseau et demandez au service informatique de vérifier les iframe/CSP pour réactiver le traitement en arrière-plan.