¿Cómo usar rutas con archivos estáticos de servicio en Node.js?

El propósito de este artículo es aprender a usar rutas para servir archivos estáticos en Node.js, tiene un módulo HTTP incorporado para transferir datos a través del Protocolo de transferencia de hipertexto (HTTP) que admite varias funciones que antes eran difíciles de usar. Con la ayuda de la funcionalidad proporcionada por este módulo, se realiza una reconstrucción completa del documento a partir de los subdocumentos (texto, descripción del diseño, imágenes, videos, guiones, etc.).

Configuración de rutas para diferentes URL:

app.js

const http = require('http');   
const port = 3000;
  
// Creating Basic http Server
const server = http.createServer((req, res) => {    
  const url = req.url;  // requested url
  const method = req.method;  // requested path
  if(url === "/")  // setting response for / path 
  {
      res.end("Path /");
  }
  // setting response for /about path
  else if(url === "/about")  
  {
   res.end("Path /about");
  }
  else  
  {
      // setting response for all other paths
      res.end("Path not found");
  }
  console.log("Url entered "+url);
});
server.listen(port, () => {
  console.log(`Server running at http://:${port}/`);
});

Producción:

Sirviendo archivos estáticos usando el módulo HTTP:

App.js

const http = require('http');
  
// File system module used for accessing files in nodejs
const fs = require("fs");  
const port = 3000;
  
// Helper function 
function readAndServe(path, res)   
{
    fs.readFile(path,function(err, data)
    {
        console.log(data);
  
        // res.setHeader('Content-Type', 'text/html');
        res.end(data);
    })
}
const server = http.createServer((req, res) => {  
  const url = req.url;
  const method = req.method;
  
  /* Serving static files on specific Routes */
  if(url === "/") 
  {
      readAndServe("./index.html",res) 
  
      /* The file named index.html will be sent 
         as a response when the index url is requested */
  }
  else if(url === "/about")
  {
      readAndServe("./about.html",res) 
      /*The about.html file will be sent as a response when 
        /about is requested */
  }
  else
  {
      res.end("Path not found"); 
      /* All paths other than / and /about will send an error as 
      a response */
  }
});
server.listen(port, () => {
  console.log(`Server running at http://:${port}/`);
});

index.html

<!DOCTYPE html>
<!DOCTYPE html>
<html>
  <head>
    <title>index</title>
  </head>
  <body>
    <h2>Welcome To GeeksForGeeks</h2>
    <p>This is Index file</p>
    <p><a href="/about">
        Click to go to About Page
       </a>
    </p>
  </body>
</html>

about.html

<!DOCTYPE html>
<html>
  <head>
    <title>About</title>
  </head>
  <body>
    <h2>Welcome To About Page</h2>
    <p><a href="/">
        Click to go to index
       </a>
    </p>
  </body>
</html>

Salida: los archivos estáticos especificados para diferentes rutas se servirán en consecuencia.

Publicación traducida automáticamente

Artículo escrito por anshubajaj911 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *