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