Pregunta sobre asp.net-mvc, asp.net-mvc-3, html, jquery, javascript – Cargar archivo del cliente al servidor sin abrir el cuadro de diálogo

0

estoy intentando crear una página aspx donde puedo cargar directamente un archivo del cliente al servidor sin la intervención del usuario. Me gustaría hacer algo como que cuando el usuario especifica la ruta del archivo en la URL, ese archivo en particular debe cargarse en el servidor.

ejemplo: ht.tp://XXX.XXX.XXX.XXX/File_upload/File_Uploader.aspx?upload=C:/sample.csv&type=csv

El usuario puede cambiar el valor después de cargar y cualquier archivo que especifique, será necesario cargarlo en el servidor que se encuentra en xxx.xxx.xxx.xxx

esto es solo una prueba para comprobar si el archivo csv se está creando en el servidor o no, y no se está creando.

Solo quiero copiar el archivo en el lado del cliente al lado del servidor y tiene que ser solo por la página aspx en el formato especificado anteriormente. Si hay alguna otra buena manera, por favor guíame. Gracias.

Por lo general, es suficiente publicar la misma respuesta solo una vez (stackoverflow.com/questions/10545227/…) :) Adriano Repetti

Tu respuesta

2   la respuesta
0

Debes publicar el contenido del archivo.

Eso es lo que hace el navegador cuando se usa el cuadro de diálogo de carga de archivos. El navegador abre el archivo y envía los contenidos a través de HTTP.

Por ejemplo, puedes publicar los contenidos usandowget --post-file=file.txt. En el servidor, puede leer los datos de la POST para recuperar el contenido del archivo.

Sí, pero no puede leer el contenido de un archivo arbitrario (de una página HTML). Quiero decir: él podría (por supuesto) hacer eso desde un script de shell, una aplicación o lo que sea, pero no se puede hacer desde una página HTML en sí. Adriano Repetti
Gracias por responder, quiero lo mismo que me dijiste. será muy útil si me puede proporcionar código de ejemplo. Básicamente mi requerimiento es diferente. Leeré la ruta del archivo desde el archivo .csv y en la base de "filepath" se cargará en el servidor. manjinder singh
Sí Adriano, necesito código en la página HTML. manjinder singh
3

Susno posible cargar un archivo sin la interacción del usuario. Tiene que realizar una acción explícita: arrastrar y soltar o seleccionar un archivo con una ventana de diálogo.

Esto es porquerazones de seguridadImagínese si una página HTML pudiera cargar en un servidor remoto cualquier archivo que desee, sin que el usuario tenga que seleccionar cuál: podría cargar documentos de usuario, configuraciones, contraseñas o lo que sea accesible para el usuario de Windows que ejecuta el navegador. Por la misma razón, incluso elvalue atributo a menudo se ignora y no todos los navegadores manejan elaccept atributo también (puede, más o menos, obligar a un usuario a seleccionar el archivo que desea antes de que pueda continuar). Por lo que recuerdo, las versiones anteriores de Firefox ni siquiera permitían hacer clic programáticamente en uninput etiqueta para subir archivos.

@subirkumarsao: si quieres decir, ¿cómo vi la acción audaz, estaba leyendo la respuesta, luego me advirtió que el mensaje se modificó, recargué y BANG! eres atrevido Juan Cortés
@thisMayhem Tengo curiosidad. ¿Hay una manera de hacerlo? Subir Kumar Sao
Visto lo que hiciste allí (negrita 'no'): D Juan Cortés
@thisMayhem pensé que no estabas de acuerdo con la publicación y que había una forma posible de hacerlo. Está bien. Ahora lo entiendo. Subir Kumar Sao

Preguntas relacionadas