Incomodidades del filereference
Hace poco utilicé la clase filereference para subir archivos. No se porqué, pero en determinados casos no me funcionaba el script dándome un error de tipo IEerror.
Tras un tiempo intentando depurar el problema descubrà que tenÃa que pasarle la ruta completa al método upload.
Esta tarea puede ser bastante pesada si somos de los que publicamos nuestro proyecto en local y después lo subimos al servidor definitivo, ya que es muy probable que olvidemos actualizar la ruta para hacer upload.
Por esto se me ocurrió utilizar una propiedad olvidada de movieclip, ._url
Esta propiedad nos da la url de la pelÃcula. Como _root es un movieclip podemos utilizar lo siguiente para obtener la ruta completa en el servidor:
path=_root._url.substr(0,_root._url.lastIndexOf(”/”))Â
Con esto podemos estar seguros que siempre le pasaremos la ruta de nuestro servidor al método upload.
file.upload(path+”/upload.aspx”)
Hola Alex,
SÃ, también he notado ese “gran” detalle de la clase FileReference e utilice algo similar a lo que propones.
También noté que nos oculta el path completo de archivo, es decir, sólo nos deja saber el file.name (nombre) algo que realmente me impidió realizar, por ejemplo, la carga desde local de una imagen seleccionada con FileReference, para asà acceder a más propiedades que el peso, como el ancho y alto. En html podemos realizarlo sin problemas citando al evento change del formulario.
Es decir, creo que realmente fue poco profesional de parte del equipo de macromedia a la hora de pensar dicha clase, o si no, como ellos dijeron, al cabo de unos meses de la detección de situaciones similares, que lo han hecho por seguridad. Pero html lo tiene desde hace años y nunca se detectó ningún fallo de seguridad.
No miré en AS3 que tal esta con éste tema, pero espero que lo allan mejorado.
Un saludo
Totalmente deacuerdo contigo Emiliano, una de las tantas cosas hechas rápidas… en fin, pasa en las mejores familias.