Servidor web Node.js

¿Qué es Node.js?
Node.js es un entorno de servidor de código abierto. Node.js usa JavaScript en el servidor. La tarea de un servidor web es abrir un archivo en el servidor y devolver el contenido al cliente.

Node.js tiene un módulo integrado llamado HTTP, que permite a Node.js transferir datos a través del Protocolo de transferencia de hipertexto (HTTP). El módulo HTTP puede crear un servidor HTTP que escuche los puertos del servidor y devuelva una respuesta al cliente.

Ejemplo:

// Import the Node.js http module
var http = require('http'); 
  
// req is the request object which is
// coming from the client side
// res is the response object which is going
// to client as response from the server
  
// Create a server object
http.createServer(function (req, res) {
  
// 200 is the status code which means
// All OK and the second argument is
// the object of response header.
res.writeHead(200, {'Content-Type': 'text/html'}); 
  
    // Write a response to the client
    res.write('Congrats you have a created a web server');
  
    // End the response
    res.end();
  
}).listen(8081); // Server object listens on port 8081
  
console.log('Node.js web server at port 8081 is running..')

La función pasada en http.createServer() se ejecutará cuando el cliente vaya a la url http://localhost:8081 .

Pasos para ejecutar el código:

  • Guarde el código anterior en un archivo con extensión .js
  • Abra el símbolo del sistema y vaya a la carpeta donde está el archivo usando el comando cd .
  • Ejecute el comando Node file_name .js
  • Abra el navegador y vaya a la url http://localhost:8081

Cuando se abre http://localhost:8081 en el navegador.

El método http.createServer() incluye un objeto de solicitud que se puede usar para obtener información sobre la solicitud HTTP actual, por ejemplo, URL, encabezado de solicitud y datos.

El siguiente ejemplo demuestra el manejo de requests y respuestas HTTP en Node.js.

// Import Node.js core module i.e http
var http = require('http');
   
// Create web server
var server = http.createServer(function (req, res) {  
      
    // Check the URL of the current request
    if (req.url == '/') {
           
        // Set response header
        res.writeHead(200, { 'Content-Type': 'text/html' }); 
           
        // Set response content    
        res.write(
          `<html><body style="text-align:center;">
            <h1 style="color:green;">GeeksforGeeks Home Page</h1>
            <p>A computer science portal</p>
            </body></html>`);
        res.end();//end the response
       
    }
    else if (req.url == "/webtech") {
           
        res.writeHead(200, { 'Content-Type': 'text/html' });
        res.write(`
          <html><body style="text-align:center;">
            <h1 style="color:green;">Welcome to GeeksforGeeks</h1>
            <a href="https://www.geeksforgeeks.org/web-technology/">
              Read Web Technology content
            </a>
          </body></html>`);
        res.end();//end the response
       
    }
    else if (req.url == "/DS") {
           
        res.writeHead(200, { 'Content-Type': 'text/html' });
        res.write(`<html><body style="text-align:center;">
          <h1 style="color:green;">GeeksforGeeks</h1>
          <a href="https://www.geeksforgeeks.org/data-structures/">
            Read Data Structures Content
          </a>
        </body></html>`);
        res.end(); //end the response
       
    }
    else if (req.url == "/algo") {
           
      res.writeHead(200, { 'Content-Type': 'text/html' });
      res.write(`<html><body style="text-align:center;">
        <h1 style="color:green;">GeeksforGeeks</h1>
        <a href="https://www.geeksforgeeks.org/fundamentals-of-algorithms/">
          Read Algorithm analysis and Design Content
        </a>
      </body></html>`);
      res.end(); //end the response
     
  }
    else
        res.end('Invalid Request!'); //end the response
   
// Server object listens on port 8081
}).listen(3000, ()=>console.log('Server running on port 3000'));

En el ejemplo anterior, req.url se usa para verificar la URL de la solicitud actual y, en función de eso, envía la respuesta.
Comando para ejecutar código:

Node index.js

Producción:

  • URL: servidor local: 3000
  • URL: localhost:3000/webtech
  • URL: localhost:3000/DS
  • URL: localhost:3000/algo

Publicación traducida automáticamente

Artículo escrito por g_ragini 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 *