Estoy tratando de hacer una aplicación web que va a leer en el lado del servidor un archivo CSV, y mostrarlo en una casa, navegable formato. El problema es que quiero hacerlo en desnudo JS/CSS3/HTML5. Hay alguna forma de leer y escribir los archivos del servidor con desnudo JS/CSS3/HTML5? Yo obviamente quiero que esto sea OS/independiente del navegador.

Lo he intentado


Me han trató de la implementación de algunas código que he encontrado en internet (un par de sitios de referencia). A continuación es lo que he intentado durante las pruebas: (solo quiero la prueba para mostrar el contenido de la página web, en sí mismo, en la página web)

scriptTest.htm:

<html>
<head>
<script type="text/javascript" src="readIt.JS"></script>
</head>
<body>
<button onclick="return readIt();">Show the code of the page</button>
<div id="readItOutput"></div>
</body>
</html>

readIt.JS:

function readIt()
{
    file = fopen(getScriptPath("scriptTest.htm"), 0);
    file_length = flength(file);
    content = fread(file, file_length);
    document.getElementById("readIt").innerText = content;
}

Sin embargo, cada vez que lo ejecuto, en Opera y Chrome, se produce la siguiente:

Ópera:

Uncaught exception: ReferenceError: Undefined variable: fopen
Error thrown at line 3, column 1 in readIt() in http://s.supuhstar.operaunite.com/s/content/JS/readIt.JS:
    file = fopen(getScriptPath("scriptTest.htm"), 0);
called from line 1, column 0 in <anonymous function>(event) in http://s.supuhstar.operaunite.com/s/content/JS/scripttest.htm:
    return readIt();

Chrome:

Uncaught ReferenceError: getScriptPath is not defined
readItreadIt.JS:3
(anonymous function)scripttest.htm:6
onclick
  • Ha considerado el uso de XHR («Ajax») para abrir el archivo deseado y, a continuación, analizar las comas y las líneas? No se puede escribir directamente del servidor de archivos con este método (tendrías que preguntar a un script del lado del servidor para hacer esto por usted a través de XHR), pero se puede «leer» un archivo de este modo, y analizar su contenido.
  • Matt es absolutamente correcto. Usted puede obtener el contenido del archivo con AJAX y, a continuación, el formato que usted desee.
  • ¿qué parte de XHR es «desnudo JS/CSS3/HTML5«?
  • Casi todos es: developer.mozilla.org/en/XMLHttpRequest
InformationsquelleAutor Supuhstar | 2012-02-08

2 Comentarios

  1. 2

    Si quieres editar algunos archivos de servidor que deberá utilizar XHR objeto de descargar el archivo al lado del cliente y el uso nuevamente del objeto XHR para enviar a modificar los datos de vuelta al servidor, también necesitamos algún tipo de API en su servidor para enviar/recibir datos.

    • ¿qué parte de XHR es «desnudo JS/CSS3/HTML5«?
    • Ver mi comentario a tu OP arriba. XHR es la implementación estándar en todos los navegadores modernos’ motores Javascript. Javascript sería muy violatile si estaba permitido leer y escribir en el sistema de archivos local o de un servidor remoto, incluso la escritura de los archivos en el mismo dominio que el origen de la solicitud. Esta es la razón por las tareas que han de ser delegado local de secuencias de comandos que tienen autorización para ejecutar. En un equipo cliente, que, básicamente, no la recibirás. Período. En su servidor, usted puede autorizar a un script o programa, invocada por un XHR solicitud, para realizar una operación de escritura.
    • todo XHR es «desnudo JS», porque lo puedes obtener en cualquier navegador sin necesidad de bibliotecas
    • por la forma en que usted puede mirar en Node.js, ligeramente desdibuja la línea entre el lado del cliente y en el servidor
    • me pueden obtener algunos ejemplos de código?
  2. 1

    Archivo de la escritura no se puede hacer con JS/CSS3/HTML5 solo por razones de seguridad, de lo contrario la gente sería capaz de modificar el js en FireBug y escribir un archivo.
    Que usted necesita para crear una API de algún tipo de uso, ya sea del lado del servidor JS o un lenguaje como PHP para manejar los permisos, nombres de archivo, los lugares, etc…

    Como para la lectura, el archivo tendría que ser de acceso público, de lo contrario tendrás que sirvió por un lenguaje en el servidor, como PHP.

    • ¿Por qué no puede la Lectura de archivos se realiza en JS/CSS3/HTML5?
    • Sólo aclaró mi respuesta – lectura sólo se puede hacer con JS si el archivo es accesible al público – es decir, se puede acceder en tu navegador sin javascript.
    • El archivo sin duda es de acceso público.

Dejar respuesta

Please enter your comment!
Please enter your name here