Hoy vamos a ver como usar las rutas básicas en Node.js para hacer un sistema que cargue ficheros html de forma dinámica en función de la URL.
//HTTP var http = require("http"); // File System para abrir ficheros var fs = require("fs"); // Creamos el servidor http.createServer(function(request, response){ // Contenido html response.writeHead(200, {'Content-Type': 'text/html'}); // Comprobamos si el segmento de la URL es alguno de estos y en cada caso cargamos un html diferente switch(request.url){ case '/': page = "index.html"; break; case '/nosotros': page = "info.html"; break; default: page = "404.html"; break; } // Cargamos el fichero y lo mostramos fs.readFile("./pages/"+page, function(error, data){ response.write(data); response.end(); }); // Puerto 3002 en el servidor local }).listen(3002, 'localhost'); // Mensaje en la consola console.log("Servidor funcionando en http://localhost:3002");
Ahora si lanzamos el script y entramos a /nosotros se nos muestra info.html:
Si entramos a la url tal cual nos carga index.html:
Si entramos a una ruta que no existe nos carga 404.html:
Estos ficheros html los tengo creados en un directorio llamado pages dentro del proyecto de Node.js.
¿Quieres aprender más? Master en JavaScript: Aprende JavaScript, jQuery, Angular, NodeJS y más