Google Chrome – allow-file-access-from-files deshabilitado para Chrome Beta 8

He estado desarrollando una aplicación AJAX utilizando jQuery y la tecnología Microsoft Seadragon.
Necesito tener acceso a la función de canvas html5 para DataURL.

Con Google Chrome, la misma regla de origen se aplica a esta función, lo que significa que una página ejecutada localmente (con el file:/// en la URL) no pudo satisfacer la misma regla de origen y se lanzó una excepción.

Con Chrome 7, iniciar la aplicación con la --allow-file-access-from-files , permite llamar a canvas.toDataURL() desde los archivos locales.

Sin embargo, parece que iniciar Chrome Beta 8 con la misma opción ( --allow-file-access-from-files ) no permite la llamada canvas.toDataURL() en el archivo local.

¿Chrome renunció a la --allow-file-access-from-files o simplemente se ha deshabilitado ya que es una versión Beta y no una versión completa?

¡Gracias!

Viendo los problemas para esto, se muestra que todo el proceso --allow-file-access-from-files se apresuró.

  1. “Firefox lo hace …”
  2. “¿Como podemos hacerlo?”
  3. algunos pases de tiempo
  4. “Aquí están los parches”
  5. “Pases! En el maletero se preguntan qué pasa en el próximo lanzamiento dev”
  6. “Ahhh está roto” “Use la opción de línea de comando” “ok”
  7. “¡Hemos enviado!”
  8. “¡WTF chicos! ¡Rompieron todas mis cosas! ¿Por qué no nos dijeron antes?”
  9. silencio

En su problema
De hecho, parece que esto es algo especial para la versión beta, estoy usando Chrome 8.0.552.5 dev aquí y --allow-file-access-from-files funciona como se esperaba, también he probado esto con Chromium 9.0.592.0 (66889) si también funciona como se esperaba.

Sospecho que ha habido algunos cambios en la twig de desarrollo. Desafortunadamente, encontrar algo en el rastreador de problemas de cromo es casi imposible.

¿Cerraste todas las instancias de Chrome antes de abrir con el argumento de línea de comando? Tienes que hacer eso para que ese parámetro funcione.

Para resumir todas las respuestas hasta ahora.

Antes de ejecutar Chrome, asegúrese de que no haya procesos chrome en ejecución.

Windows

 -allow-file-access-from-files 

(con un guion)

Linux

 --allow-file-access-from-files 

(con dos guiones)

He encontrado una forma de resolver el problema usando un enfoque JavaScript / Flash. Si el flash se comstack en el entorno limitado de seguridad Solo local, tiene acceso completo a los archivos locales. Al utilizar ExternalInterface, JavaScript puede solicitar una aplicación Flash para cargar un archivo y Flash puede pasar el resultado a JavaScript.

Puede encontrar mi implementación aquí: https://code.google.com/p/flash-loader/

El truco que me dio fue que debes dar la ruta absoluta del archivo y no solo el nombre del archivo en tu código HTML. por ejemplo, archivo: // … en lugar de nombre directo aunque esté accediendo al archivo en el mismo directorio. ¡Funcionará!