Node.js: Node.js es un entorno de tiempo de ejecución multiplataforma y de código abierto para ejecutar código JavaScript fuera de un navegador. Debe recordar que NodeJS no es un marco y no es un lenguaje de programación. La mayoría de las personas están confundidas y entienden que es un marco o un lenguaje de programación. A menudo usamos Node.js para crear servicios de back-end como API como aplicación web o aplicación móvil. Es utilizado en la producción por grandes empresas como Paypal, Uber, Netflix, Walmart, etc. Express.js:Express es un marco pequeño que se asienta sobre la funcionalidad del servidor web de Node.js para simplificar sus API y agregar nuevas funciones útiles. Facilita la organización de la funcionalidad de su aplicación con middleware y enrutamiento. Agrega utilidades útiles a los objetos HTTP de Node.js. Facilita la representación de objetos HTTP dinámicos.
Diferencia entre Node.js y Express.js:
- Node.js es una plataforma para crear aplicaciones de E/S que se basan en eventos del lado del servidor y se realizan con JavaScript.
- Express.js es un marco basado en Node.js que se utiliza para crear aplicaciones web utilizando enfoques y principios de Node.js.controlado por eventos.
Rasgo | Express.js | Node.js |
Uso | Se utiliza para crear aplicaciones web utilizando enfoques y principios de Node.js. | Se utiliza para crear aplicaciones del lado del servidor, de entrada y salida, basadas en eventos. |
Nivel de características | Más características que Node.js. | Menos funciones. |
Bloque de construcción | Está construido sobre Node.js. | Está construido sobre el motor V8 de Google. |
Escrito en | JavaScript | C, C++, JavaScript |
Marco/Plataforma | Framework basado en Node.js. | Plataforma o entorno de tiempo de ejecución diseñado para la ejecución de JavaScript en el lado del servidor. |
Controladores | Se proporcionan controladores. | No se proporcionan controladores. |
Enrutamiento | Se proporciona enrutamiento. | No se proporciona enrutamiento. |
software intermedio | Utiliza middleware para la disposición de funciones sistemáticamente del lado del servidor. | No utiliza tal disposición. |
tiempo de codificación | Requiere menos tiempo de codificación. | Requiere más tiempo de codificación. |
Ejemplo: La siguiente comparación muestra cómo el mismo código se escribe de manera diferente en Node.js (código de la pestaña izquierda) y Express.js (código de la pestaña derecha).
Nota : Estos códigos están cubiertos en las siguientes comparaciones.
Starting a server in Node.js & Express.js 1. Express.js Server: Install express using the following command:
npm install --save express
Nombre de archivo: index.js
Javascript
// Requiring the module const express = require('express'); const app = express(); // Route handling app.get('/', (req, res) => { res.send('<h2>Hello from Express.js server!!</h2>'); }); // Server setup app.listen(8080, () => { console.log('server listening on port 8080'); });
Ejecute el archivo index.js con el siguiente comando:
node index.js
Producción:
2. Node.js Server: Require the http module using the following code:
const http = require('http');
Nombre de archivo: index.js
Javascript
// Requiring the module const http = require('http'); // Creating server object const server = http.createServer((req, res) => { res.setHeader('Content-Type', 'text/html'); res.write('<html>'); res.write('<head><title>GeeksforGeeks</title><head>'); res.write('<body><h2>Hello from Node.js server!!</h2></body>'); res.write('</html>'); res.end(); }); // Server setup server.listen(3000, ()=> { console.log("Server listening on port 3000") });
Ejecute el archivo index.js con el siguiente comando:
node index.js
Producción:
Routing in Node.js & Express.js 1. Routing in Express.js:
- Se proporciona enrutamiento y la implementación es fácil.
- Podemos pasar directamente el nombre de la ruta y la función a la función incorporada de express, mencionando el tipo de solicitud como get, post.
Nombre de archivo: index.js
Javascript
// Requiring module const express = require('express'); const app = express(); // Handling '/' request app.get('/', (req, res) => { res.send('<h2>Hello from Express.js server!!</h2>'); }); // Handling '/about' request app.get('/about', (req,res) => { res.send('<h2>GeeksforGeeks- Express.js</h2>'); }); // Server setup app.listen(8080, () => { console.log('server listening on port 8080'); });
Ejecute el archivo index.js con el siguiente comando:
node index.js
Abra su navegador y vaya a http://localhost:8080/about , el siguiente será el resultado:
2. Routing in Node.js:
- No se proporciona enrutamiento.
- Tenemos que verificar la URL y el método de la solicitud mientras enviamos la respuesta.
Nombre de archivo: index.js
Javascript
// Requiring the module const http = require('http'); // Creating server object const server = http.createServer((req, res) => { const url = req.url; if(url === '/') { res.write('<html>'); res.write( '<head><title>GeeksforGeeks</title><head>'); res.write( '<body><h2>Hello from Node.js server!!</h2></body>'); res.write('</html>'); return res.end(); } if(url === '/about') { res.write('<html>'); res.write( '<head><title>GeeksforGeeks</title><head>'); res.write( '<body><h2>GeeksforGeeks- Node.js</h2></body>'); res.write('</html>'); return res.end(); } }); // Server setup server.listen(3000, () => { console.log("Server listening on port 3000") });
Ejecute el archivo index.js con el siguiente comando:
node index.js
Abra su navegador y vaya a http://localhost:3000/about , el siguiente será el resultado:
Publicación traducida automáticamente
Artículo escrito por Shubhadarshie y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA