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.
Hay muchas formas de crear un servidor e incluso node.js tiene su propio servidor incorporado ‘http’. Algunos de ellos se mencionan a continuación:
1. Creación del servidor usando el módulo ‘ http ‘:
Importar módulo http : importe el módulo http y almacene la instancia HTTP devuelta en una variable.
Sintaxis:
var http = require("http");
Creación y enlace del servidor: cree una instancia de servidor usando el método createServer() y vincúlelo a algún puerto usando el método listen() .
Sintaxis:
const server = http.createServer().listen(port)
Parámetro: este método (listen()) acepta un solo parámetro como se mencionó anteriormente y se describe a continuación:
- puerto < Número >: los puertos están en el rango de 1024 a 65535 y contienen puertos registrados y dinámicos.
El siguiente ejemplo ilustra el uso del módulo http en Node.js.
Ejemplo: Nombre de archivo: index.js
javascript
// Node.js program to create // http server // Using require to access http module const http = require("http"); // Port number const PORT = process.env.PORT || 2020; // Creating server const server = http.createServer( // Server listening on port 2020 function (req, res) { res.write('Hello geeksforgeeks!'); // Write a response to the client res.end(); } ) .listen(PORT, error => { // Prints in console console.log(`Server listening on port ${PORT}`) });
Ejecute el archivo index.js usando el siguiente comando:
node index.js
Producción:
Servidor escuchando en el puerto 2020
Ahora escriba http://127.0.0.1:2020/ O http://localhost:2020 en un navegador web para ver el resultado.
2. Crear servidor usando el módulo ‘ https ‘:
Nota: Para crear un servidor HTTPS , necesitamos la clave y el certificado SSL , y el módulo https Node.js incorporado.
Importar módulo https: importe el módulo https y almacene la instancia HTTP devuelta en una variable.
Sintaxis:
var https = require("https");
Creación y enlace del servidor: cree una instancia de servidor usando el método createServer() y vincúlelo a algún puerto usando el método listen().
Sintaxis:
const server = https.createServer(options, onResponseCallback).listen(port)
Parámetro: este método acepta tres parámetros, como se mencionó anteriormente y se describe a continuación:
- options < key, certi > : Incluye clave y certificado pasado.
- onResponseCallback < Callback >: es una función de devolución de llamada que se llama en respuesta a createServer.
- puerto < Número > : los puertos están en el rango de 1024 a 65535 y contienen puertos registrados y dinámicos.
El siguiente ejemplo ilustra el uso del módulo https en Node.js.
Ejemplo: Nombre de archivo: index.js
javascript
// Node.js program to create // https server // Using require to access https module var https = require('https'); var fs = require('fs'); const port= 8000; var options = { // Note: We require SSL and certificate // to create https servers key: fs.readFileSync('key.pem'), cert: fs.readFileSync('cert.pem') }; https.createServer(options, function (req, res) { // Returns the status res.writeHead(200); res.end("Hello GeeksforGeeks"); }).listen(port);
Ejecute el archivo index.js con el siguiente comando:
node index.js
Producción:
Hola GeeksforGeeks
Ahora que el servidor está configurado e iniciado, podemos obtener el archivo de la siguiente manera:
curl -k https://localhost:8000
Ahora escriba https://127.0.0.1:8000/ O https://localhost:8000 en un navegador web para ver el resultado.
Ejemplo: Nombre de archivo: index.js
javascript
// Node.js program to get the response // from https server // Using require to access http module const https = require('https'); // https://www.google.com/ https.get('https://www.geeksforgeeks.org/', (res) => { // Printing status code console.log('statusCode:', res.statusCode); // Printing headers console.log('headers:', res.headers); }).on('error', (e) => { console.log(e); });
Ejecute el archivo index.js con el siguiente comando:
node index.js
Producción:
>> código de estado: 200
>> encabezados: { servidor: ‘Apache’, ……… ‘tiempo de servidor’: ‘cdn-cache; desc=HIT, borde; dur=1’}
3. Crear un servidor usando el módulo ‘Express’: para usar el módulo express, necesitamos instalar NPM (Node Package Manager) y los siguientes módulos ( en cmd ).
// Creates package.json file >> npm init // Installs express module >> npm install express --save OR >> npm i express -s
Importar módulo express: importe el módulo express y almacene la instancia devuelta en una variable.
Sintaxis:
var express = require("express");
Creación del servidor: la sintaxis anterior llama a la función «express()» y crea una nueva aplicación express que se almacena dentro de la variable de la aplicación.
Sintaxis:
const app = express(); // OR by Importing and creating express application var express = require("express")();
Envío y escucha de la respuesta: Comunica la solicitud y la respuesta con el cliente y el servidor. Requiere PUERTO < número > e IP < número > para comunicarse.
app.listen(PORT, IP, Callback);
Parámetro: Este método acepta tres parámetros como se mencionó anteriormente y se describe a continuación.
- PUERTO < Número > : Los puertos son los puntos finales de comunicación que ayudan a comunicarse con el cliente y el servidor.
- IP <Número> : las direcciones IP representan la dirección IPv4 o IPv6 de un host o un dispositivo.
- Callback < Función > : Acepta una función.
El siguiente ejemplo ilustra el módulo Express.js en Node.js.
Ejemplo: Nombre de archivo: index.js
javascript
// Node.js program to create server // with help of Express module // Importing express const express = require('express'); // Creating new express app const app = express(); // PORT configuration const PORT = process.env.PORT || 2020; // IP configuration const IP = process.env.IP || 2021; // Create a route for the app app.get('/', (req, res) => { res.send('Hello Vikas_g from geeksforgeeks!'); }); // Create a route for the app app.get('*', (req, res) => { res.send('OOPS!! The link is broken...'); }); // Server listening to requests app.listen(PORT, IP, () => { console.log(`The Server is running at: http://localhost:${PORT}/`); });
Ejecute el archivo index.js con el siguiente comando:
node index.js
Producción:
El servidor se está ejecutando en: http://localhost:2020
Ahora escriba http://127.0.0.1:2020/ O http://localhost:2020/ en un navegador web para ver el resultado.
4. Crear un servidor usando el módulo ‘Hapi’: para usar el módulo hapi , necesitamos instalar NPM (Node Package Manager) y los siguientes módulos (en cmd).
// creates package.json file >> npm init // Installs hapi module >> npm install @hapi/hapi --save
Importar módulo hapi: importe el módulo hapi y almacene la instancia devuelta en una variable.
Sintaxis:
var Hapi = require("@hapi/hapi");
Creando Servidor: La sintaxis anterior importa el módulo “express()” y ahora crea un servidor. Comunica la solicitud y la respuesta con el cliente y el servidor. Requiere PORT <number> y host <string> para comunicarse.
Sintaxis:
const server = Hapi.server({port: 2020, host: 'localhost'});
Parámetro: Este método acepta tres parámetros como se mencionó anteriormente y se describe a continuación.
- PUERTO < Número > : Los puertos son los puntos finales de comunicación que ayudan a comunicarse con el cliente y el servidor.
- HOST < String > : Es el nombre del host.
El siguiente ejemplo ilustra el módulo Hapi en Node.js.
Ejemplo: Nombre de archivo: index.js
javascript
// Node.js program to create server // using hapi module // Importing hapi module const Hapi = require('@hapi/hapi'); // Creating Server const server = Hapi.server({ port: 2020, host: 'localhost' }); // Creating route server.route({ method: 'GET', path: '/', handler: (request, hnd) => { return 'Hello GeeksForGeeks!'; } }); const start = async () => { await server.start(); console.log('Server running at', server.info.uri); }; process.on('unhandledRejection', (err) => { console.log(err); process.exit(1); }); start();
Ejecute el archivo index.js con el siguiente comando:
node index.js
Producción:
Server running at: http://localhost:2020
Ahora escriba http://localhost:2020/ en un navegador web para ver el resultado.
5. Creación del servidor usando el módulo ‘Koa’: Para usar el módulo Koa, necesitamos instalar el NPM (Node Package Manager) y los siguientes módulos (en cmd).
// Creates package.json file >> npm init // Installs express module >> npm install koa --save OR >> npm i koa -s
Importar módulo express: importe el módulo koa y almacene la instancia devuelta en una variable.
Sintaxis:
// Importing koa module var koa = require("koa");
Creación del servidor: la sintaxis anterior importa el módulo koa y crea una nueva aplicación koa que se almacena dentro de la variable de la aplicación.
Sintaxis:
// Creating koa application const app = new koa();
Envío y escucha de la respuesta: Comunica la solicitud y la respuesta con el cliente y el servidor. Requiere PUERTO < número > e IP < número > para comunicarse.
app.listen(PORT, IP, Callback);
Parámetro: Este método acepta tres parámetros como se mencionó anteriormente y se describe a continuación.
- PUERTO < Número > : Los puertos son los puntos finales de comunicación que ayudan a comunicarse con el cliente y el servidor.
- IP < Número > : las direcciones IP representan la dirección IPv4 o IPv6 de un host o un dispositivo.
- Callback < Función > : Acepta una función.
El siguiente ejemplo ilustra el módulo Koa en Node.js.
Ejemplo: Nombre de archivo: index.js
javascript
// Node.js program to create server // with help of Koa module // Importing koa const koa = require('koa'); // Creating new koa app const app = new koa(); // PORT configuration const PORT = process.env.PORT || 2020; // IP configuration const IP = process.env.IP || 2021; app.use(function *(){ this.body = "Hello GeeksForGeeks!"; }); // Server listening to requests app.listen(PORT, IP, ()=>{ console.log("Server started at port", PORT); });
Ejecute el archivo index.js con el siguiente comando:
node index.js
Producción:
El servidor se está ejecutando en el puerto 2020
Ahora escriba http://127.0.0.1:2020/ O http://localhost:2020/ en un navegador web para ver el resultado.
Publicación traducida automáticamente
Artículo escrito por amitkumarjee y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA