CREAR UNA API WEB CON NODE.JS Y EXPRESS

Express Tutorial Part 2: Creating a skeleton website - Aprende ...


Use  Express for Node.js para construir API RESTFUL. Cree y configure middleware para agregar elementos como el registro  la autentificacion o autorización.

Prerrequisitos:

1) Git y Node.js instalados en su PC
2) Familiaridad con la edicion de texto y archivos de codigo en cualquier editor de texto
3) Familiaridad básica con el protocolo HTTP
4) Experiencia en el uso de la linea de comando, incluidas las operaciones de Git

Introducción

El uso de la web como plataforma para ejecutar su aplicación significa que cualquiera puede acceder a ella utilizando un navegador o un cliente o software que puede hablar HTTP, lo cual es poderoso.

Objetivos de aprendizaje


Al final de este modulo, podrás
1)Describir los conceptos centrales del  framework web Express.
2)Configurar middleware para controlar como se maneja una solocitud.
3)Responda a solicitudes HTTP con diferentes tipos de contenido como texto y JSON
4)Enviar datos a un punto fina Express

Crear una nueva aplicacion web express 


Las empresas a menudo tienen muchos datos almacenados en muchos lugares, como sistemas de archivos o bases de datos, por ejemplo.Una forma de acceder a esos datos es sirviéndolos a través de aplicaciones web y API utilizando HTTP.

Cosas importantes a tener en cuenta al crear aplicaciones web y API

1)Enrutamiento: Es un concepto en el que su aplicación se divide en diferentes secciones en función de partes de la direccion URL.

2)Admite diferentes tipos de contenido: Los datos que se pueden publicar pueden existir en diferentes formatos, como texto sin formato, JSON,HTML,CSV y mas.

3)Autentificacion o autorización: Algunos datos pueden ser confidenciales y pueden necesitar que el usuario inicie sesión o incluso tener un rol especifico o un nivel de permiso para poder acceder a ellos.

4)Lectura o escritura de datos: es muy probable que los usuarios necesiten mostrar datos y poder agregar datos al sistema,por ejemplo, ingresando datos en un formulario o cargando archivos.

5)Tiempo de comercialización: Las herramientas y bibliotecas elegidas para crear aplicaciones web y API  deben incluir soluciones a problemas comunes para garantizar que el desarrollador pueda dedicar el mayor tiempo posible a la implementacion de los requisitos comerciales.

Modulo HTTP en Node.js

Node.js viene con un modulo http incorporado.Es un modulo bastante pequeño que es competente en el manejo de la mayoria de los tipos de solicitudes. Es capaz de trabajar con temas importantes como encabezados URL y cargas que se envian.

Las siguientes clases ayudan a gestionar una solicitud de principio a fin:

1) http.Server: este objeto representa una instancia de un servidor HTTP. Este objeto necesita instrucciones para escuchar diferentes eventos en un puerto y dirección específicos.

2) http.IncomingMessage: este objeto es una secuencia legible creada por  http.Server o http.ClientRequest. Puede usarlo para acceder a cosas como estado, encabezados y datos.

3) http.ServerResponse: este objeto es una secuencia creada internamente por el servidor HTTP. Esta clase le permite definir como debería ser la respuesta en términos de que encabezados debería tener; cual debería ser la respuesta, etc.



EJEMPLO DE APLICACIÓN WEB


A continuación se muestra un ejemplo del aspecto que puede tener una aplicación web

const http = require('http');
const PORT = 3000;

const server = http.createServer((req, res) => {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('hello world');
});

server.listen(PORT, () => {
  console.log(`listening on port ${PORT}`)
})


Aquí tratare de explicar algunas cosas interesantes que suceden en el ejemplo 

1) Creación del servidor: lo que se ve arriba es como la llamada a createServer() crea una instancia de http.server.

2) Implementacion de la devolución de llamada: el método createServer() espera una función, una llamada devolución de llamada que cuando se invoca se proporciona con instancias de http.IncomingMessage y http.ServerResponse, aqui se llaman res y reg.
-La solicitud del cliente: la instancia reg puede investigar que encabezados y datos se han enviado como parte de la solicitud del cliente.
-La respuesta del servidor: depende del servidor construir una respuesta instruyendo el objeto res con que datos y encabezados de respuesta debe responder.

3) Comience a escuchar las solicitudes: el servidor creado a partir de la llamada a createServer() se  puede escuchar invocando el método listen() al especificar un  puerto. Después de llamar listen(), el servidor ahora esta listo para aceptar solicitudes de clientes.

Los parámetros reg y res del ejemplo que viste arriba son flujos. Cuando escuche los datos entrantes de una solicitud del cliente, usara el metodo on() de la siguiente manera 

Código

req.on('data', (chunk) => {
  console.log('You received a chunk of data', chunk)
})

Por el contrario, la forma en que los datos se envian de vuelta al cliente es mediante la colocacion de datos en el flujo de respuesta res invocando el metodo end() de la siguiente manera.

Código

res.end('some data')

EXPRESS 

Por que usar express para nuestra próxima aplicación 

1) Excelentes caracteristicas : Express tiene un conjunto de características que lo convierten en un desarrollador rápido y productivo.

2)Extrae la complejidad : Los resúmenes extraen conceptos complicados como Streams por ejemplo , y por lo tanto hacen que la experiencia de desarrollo sea mucho mas fácil.

3)Resuelve problemas web comunes : Express lo ayuda con problemas comunes como la administración de rutas, el almacenamiento en cache, la redireccion y mas.

4)Confianza de millones de desarrolladores : Según github 6,8 millones de dearrolladores utilizan actualmente Express para sus aplicaciones web. Un numero tan significativo implica que hay muchos desarrolladores invertidos en su éxito.


CREAR UNA APLICACION WEB CON EXPRESS

En esta pagina te plantean y ayudan a realizar este ejericicio  Crear una aplicacion web con express
Aquí te dejo un vídeo tutorial en el que podra ayudarte para resolverlo  Video tutorial
Nota: Cabe recalcar que el vídeo no es de mi autoria 

Aquí adjunto la resolución del ejercicio hecho por mi y lo que espero que tu también logres mostrar 





SALIDA 



CREAR UNA APLICACIÓN WEB QUE DEVUELVA DATOS JSON 


En esta pagina te plantean y ayudan a realizar este ejericicio  Crear una aplicacion web con express
Aquí te dejo un vídeo tutorial en el que podrá ayudarte para resolverlo Video tutorial
Nota: Cabe recalcar que el video no es de mi autoria 

Aquí adjunto la resolución del ejercicio hecho por mi y lo que espero que tu también logres mostrar

 


SALIDA


Felicidades 


has logrado implementar una segunda ruta que puede servir contenido estático

 FINNNNN ♥ ♥ 

Comentarios

Entradas populares