web-dev-qa-db-fra.com

Google Chrome --aller-fichier-accès-de-fichiers désactivé pour Chrome Beta 8

J'ai développé une application AJAX utilisant les technologies jQuery et Microsoft Seadragon.
Je dois avoir accès à la fonction de toile html5 toDataURL.

Avec Google Chrome, la même règle d'origine s'applique à cette fonction, ce qui signifie qu'une page exécutée localement (avec le file:/// dans l'URL) n'a pas réussi à satisfaire la même règle d'origine et qu'une exception est levée.

Avec Chrome 7, le démarrage de l'application avec l'option --allow-file-access-from-files permet d'appeler canvas.toDataURL() à partir de fichiers locaux.

Cependant, il semble que le fait de démarrer la version bêta de Chrome 8 avec la même option (--allow-file-access-from-files) n'autorise pas l'appel canvas.toDataURL() sur le fichier local. 

Chrome a-t-il abandonné l'option --allow-file-access-from-files ou vient-elle d'être désactivée puisqu'il s'agit d'une version bêta et non d'une version complète?

Merci!

27
Alexandre

En regardant les problèmes pour cela montre que tout le --allow-file-access-from-files chose a été précipité.

  1. "Firefox le fait .."
  2. "Comment pouvons-nous le faire?"
  3. un peu de temps passe
  4. "Voici les patchs"
  5. "Passes! On se demande ce qui se passe dans la prochaine version de dev"
  6. "Ahhh c'est cassé" "Utilisez l'option en ligne de commande" "ok"
  7. "Nous avons expédié!"
  8. "Les gars de WTF? Vous avez cassé toutes mes affaires! Pourquoi ne nous l'avez-vous pas dit plus tôt?"
  9. silence

À votre problème
En effet, il semble que ce soit quelque chose de spécial pour la version bêta, j’utilise Chrome 8.0.552.5 dev ici et --allow-file-access-from-files fonctionne comme prévu, j’ai également testé cela avec Chromium 9.0.592.0 (66889), s’il fonctionnait également comme prévu.

Je soupçonne qu'il y a eu quelques changements sur la branche dev. Malheureusement, il est presque impossible de trouver quelque chose dans le suivi des problèmes de chrome.

46
Ivo Wetzel

Avez-vous fermé toutes les instances de chrome avant d'ouvrir avec l'argument de ligne de commande? Vous devez faire cela pour que ce paramètre fonctionne.

22
Guillaume86

Pour résumer toutes les réponses jusqu'à présent.

Avant d'exécuter chrome, assurez-vous qu'aucun processus chrome n'est en cours d'exécution.

Les fenêtres

-allow-file-access-from-files

(avec un tiret)

Linux

--allow-file-access-from-files

(avec deux tirets)

10
Vanuan

J'ai trouvé un moyen de contourner le problème en utilisant une approche JavaScript/Flash. Si flash est compilé dans le sandbox de sécurité local uniquement, il dispose d'un accès complet aux fichiers locaux. À l'aide de ExternalInterface, JavaScript peut demander à une application Flash de charger un fichier, et Flash peut renvoyer le résultat à JavaScript.

Vous pouvez trouver mon implémentation ici: https://code.google.com/p/flash-loader/

1
CommissarXiii