logoImagina
iconCurso
Te recomendamos nuestro curso de Node JS
Descubre el curso de Node JS
Ir al curso
Descubre la formación a tu medida
Rellena el formulario para obtener más información sobre los cursos.
Tamaño de la empresa *
Términos y condiciones *

Aprende Node.js – Tutorial de Primeros Pasos

iconImage
Publicado 2024-03-07
Actualizado el 2024-03-22

Tutorial para principiantes de Node.js

En este tutorial, te guiaré a través de los pasos para instalar Node.js en tu sistema y te mostraré cómo comenzar a utilizarlo para ejecutar código JavaScript desde la consola. Además, exploraremos cómo crear un servidor básico y una API REST utilizando Node.js y Express.

Si estás interesado en aprender Node.js y ampliar tus habilidades en el desarrollo web, puedes consultar nuestro curso de Node.js.

¿Qué es Node.js?

Node.js es una plataforma de desarrollo basada en Google’s V8, que es el motor de Google Chrome para Javascript, para ejecutar código Javascript en cualquier plataforma, sin necesidad de que sea un navegador. Además es de código abierto con una gran comunidad detrás y se suele utilizar para realizar tareas de servidor.

Node.js maneja todas la peticiones de manera asíncrona, por lo que se continúa ejecutando el código aún si espera a la respuesta del servidor.

Instalación de Node.js

Descargar Node.js

Dirígete al sitio web oficial de Node.js y haz clic en el botón de descarga correspondiente a tu sistema operativo.

Instalar Node.js en Windows

  • Haz doble clic en el archivo de instalación descargado.
    Intalador de Node.js en Windows
  • Se abrirá el asistente de instalación. Acepta los términos de la licencia y sigue las instrucciones del asistente.
  • Elige la ubicación de instalación y selecciona los componentes que deseas instalar. Para la mayoría de los casos, las opciones predeterminadas son adecuadas.
  • Haz clic en "Install" para iniciar la instalación.
  • Una vez completada la instalación, haz clic en "Finish".

Instalar Node.js en macOS

  • Abre el archivo de instalación descargado.
  • Se abrirá el asistente de instalación. Haz clic en "Continue".
  • Acepta los términos de la licencia y haz clic en "Continue".
  • Elige la ubicación de instalación y haz clic en "Install".
  • Si se te solicita, ingresa la contraseña de administrador de tu sistema.
  • Una vez completada la instalación, haz clic en "Close".

Instalar Node.js en Linux

  • Abre la terminal.
  • Navega hasta la ubicación donde se encuentra el archivo de instalación descargado.
  • Ejecuta el siguiente comando para extraer el archivo:
1 tar -xvf <nombre-del-archivo.tar.xz>
  • Navega al directorio extraído:
1 cd <nombre-del-directorio>
  • Ejecuta el siguiente comando para instalar Node.js:
1 ./configure 2 make 3 sudo make install

Verificar la instalación de Node.js

Para verificar que Node.js se ha instalado correctamente, abre la terminal y ejecuta el siguiente comando:

1node -v

Si la instalación fue exitosa, se mostrará la versión de Node.js instalada.

Cómo usar Node.js en la consola

Lo primero que haremos será utilizar Node.js directamente desde la consola de nuestro terminal, para  lo que tendremos que utilizar el comando node en esta, y ya podemos escribir nuestro código Javascript.

Por ejemplo si ejecutamos el código:

1var suma = 1 + 4 2console.log(suma)
Descubre la formación a tu medida
Rellena el formulario para obtener más información sobre los cursos.
Tamaño de la empresa *
Términos y condiciones *

Cómo crear tu primer servidor en Node.js

Ahora que ya hemos visto que Node.js ejecuta Javascript desde la consola vamos a crear un archivo .js para crear un pequeño servidor que nos muestre el mensaje Hola Mundo.

Para eso creamos el archivo server.js, en el que escribimos:

Este código lo que hace es importar la funcionalidad http de node con la primera línea, después utiliza la función createServer de esta para crear un servidor. Esta función recibe como parámetro una función que gestiona la petición y la respuesta se realiza al servidor al crearse, así que solo responde enviando el código 200 para confirmar que la respuesta se ha realizado de manera correcta y la finaliza con el mensaje ‘Hola mundo’. Por último dice en que puerto local esta ubicado el servidor.

Ahora si en consola utilizamos el comando:

1node server.js

Podremos acceder a http://localhost:8080/ para ver nuestro “Hola Mundo”.

Crear API rest en Node.js

También podemos crear una API con Node.js. Una API es el conjunto de reglas y mecanismos mediante los cuales una aplicación interactúa con las demás, devolviendo los datos en XML y JSON. Una API rest es aquella que utiliza métodos HTTP  para presentar datos de una base de datos al cliente.

Para esto, node.js utiliza el framework express para realizar peticiones HTTP. Tendremos que crear un proyecto con la utilidad npm incluida en Node.js. Así que iremos a la carpeta en la que queramos alojar el proyecto y utilizamos el siguiente comando:

1npm init

El cual nos pedirá algunos datos del proyecto. Además crea, entre otras cosas,  un archivo de configuración del proyecto para poder añadir las extensiones llamado package.json y una carpeta para almacenarlas . Así que ahora instalaremos express en este directorio con el comando:

1npm i --save express

Creación de una base de datos en JavaScript

Ahora tenemos que crear una ‘base de datos’ en JavaScript a la cual solicitar la información. Para esto creamos un archivo db.js dentro de una carpeta db. En este archivo añadimos una entrada:

1const horario = [ 2 { 3 id: 1, 4 title: "comida", 5 description: "La hora de comer son las 2pm" 6 } 7]; 8 9module.exports = { 10 horario: horario 11}

module.exports lo que hace es darle nombre a lo que exportamos a otro archivo.

Gestión de peticiones

Ahora crearemos el archivo .js que gestione las peticiones y devuelva datos de la ‘base datos’. Llamaremos a este archivo api.js

1const express = require('express'); 2 3const db = require('./db/db'); 4 5// Inicia express 6 7const app = express(); 8 9// get horario 10 11app.get('/api/horario', function(req, res){ 12 13 res.status(200).send({ 14 success: 'true', 15 message: 'Horario conseguido satisfactoriamente', 16 horario: db.horario 17 }) 18}); 19 20const PORT = 5000; 21 22app.listen(PORT, function(){ 23 console.log(`servidor corriendo en puerto ${PORT}`) 24});

En este código lo primero que hacemos en importar express y nuestra base de datos con require.

Después iniciamos express para utilizar sus métodos, que utilizamos get, para indicarle que hacer cuando recibe una petición GET, que es la petición para obtener datos de una API Rest. Sus parámetros són la dirección http que tiene que recibir la petición y una función para manejar la petición y la respuesta. Le decimos que el status de la respuesta es 200, es decir que todo ha salido correcto y añadimos a los datos de la base de datos un mensaje de que todo ha ido bien.

Ahora solo queda utilizar el método listen para iniciar un servidor, que recibe el puerto en el que se despliega y la función a realizar al desplegarse, que en este caso es decir por consola en que puerto esta.

Prueba de la API en Postman

Para comprobar que todo ha ido bien utilizaremos la aplicación Postman para probar las APIs. Debemos descargarla desde la web oficial de Postman e instalarla. Una vez iniciada utilizamos el siguiente comando para iniciar el servidor:

1node api.js

Ahora le indicamos a postman la dirección a la que realizar el método GET y lanzamos la petición. Si todo ha salido bien, debería aparecer un mensaje así:

Vista de petición GET en Postman

Método POST para añadir datos

Ahora crearemos código para añadir un nuevo horario a través de nuestra API, para esto necesitamos instalar body-parser para cambiar el JSON que le enviamos en el body de la petición a objetos que utilizar en nuestro archivo api.js.

Para instalarlo utilizamos:

1npm install body-parser --save

Utilizamos require para importarlo:

1const bodyParser = require('body-parser');

Y le indicamos a express que tiene que utilizarlo para traducir el JSON:

1app.use(bodyParser.json()); 2app.use(bodyParser.urlencoded({ extended: false }));

Ahora ya añadimos el POST, que es la petición a una API para crear una nueva entrada:

1app.post('/api/horario', function(req, res){ 2 3 if(!req.body.title) { 4 5 return res.status(400).send({ 6 success: 'false', 7 message: 'title es necesario' 8 9 }); 10 11 } 12 else if(!req.body.description) { 13 14 return res.status(400).send({ 15 success: 'false', 16 message: 'description es necesario' 17 }); 18 } 19 20 const hora = { 21 id: db.horario[db.horario.length-1].id + 1, 22 title: req.body.title, 23 description: req.body.description 24 25 } 26 27 db.horario.push(hora); 28 29 return res.status(201).send({ 30 success: 'true', 31 message: 'Horario añadido', 32 hora 33 }) 34 });

En este código primero comprobamos que en la petición tengo tanto title cómo description, devolviendo un error en el caso que no haya salido bien, con el status 400, que quiere decir que la petición no tenía los datos necesarios.

A continuación, si todo va bien añadimos la hora a nuestra “base de datos”, utilizando horario.push y la hora que hemos creado con los datos enviados.

Para comprobar que ha ido bien volveremos a utilizar Postman, pero esta vez utilizando el método POST, y añadiendo en body el tipo de datos x-www-form-urlencoded y, aquí, el title y la descripción. Dado que no lo almacenamos en una base de datos real, si no en una archivo .js una vez reiniciemos el servidor los cambios a la “base de datos” cambien se revertirán.

Podemos realizar una parecida a esta:

Vista de petición POST en Postman

Además del mensaje satisfactorio podemos comprobar que todo ha ido bien realizando una petición GET, en la cual si todo ha ido bien deberán aparecer las dos entradas:

Vista de petición GET en Postman y respuesta recibida

Aprende Node.js desde cero

Node.js es una poderosa plataforma que te permite construir aplicaciones web eficientes y escalables. Si estás interesado en aprender más sobre Node.js y ampliar tus habilidades de desarrollo, te invitamos a consultar nuestro curso de Node.js.

No importa si eres un principiante en Node.js o ya tienes experiencia previa, nuestro curso te brindará una base sólida y te ayudará a mejorar tus habilidades de programación en este entorno. ¡No pierdas la oportunidad de dominar Node.js y llevar tus proyectos al siguiente nivel!

Descubre la formación a tu medida
Rellena el formulario para obtener más información sobre los cursos.
Tamaño de la empresa *
Términos y condiciones *
iconClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClienticonClient