Introducción
En este proyecto, aprenderás a crear un proxy inverso utilizando Node.js. Un proxy inverso es un servidor que se coloca entre un cliente y un servidor backend, redirigiendo las solicitudes del cliente al servidor backend y devolviendo la respuesta al cliente.
👀 Vista previa

🎯 Tareas
En este proyecto, aprenderás:
- Cómo crear un servidor HTTP utilizando Node.js
- Cómo utilizar el
Stream pipepara pasar los datos de respuesta de GitHub directamente al cliente - Cómo iniciar el servidor proxy inverso y probarlo
🏆 Logros
Después de completar este proyecto, podrás:
- Comprender el concepto de un proxy inverso y cómo funciona
- Crear un proxy inverso utilizando Node.js para proxyear solicitudes al sitio web de GitHub
- Implementar la funcionalidad del proxy inverso utilizando el
Stream pipe - Iniciar y probar el servidor proxy inverso
Implementar el proxy inverso
Para comenzar, abre el editor. Deberías ver un archivo en el editor: "proxy.js".
En este paso, aprenderás a utilizar el Stream pipe para pasar los datos de respuesta de GitHub directamente al cliente. Sigue los pasos siguientes para completar este paso:
- En el archivo
proxy.js, localiza el comentario// TODOen la funciónhttp.createServer. - Reemplaza el comentario
// TODOcon el siguiente código:
https.get(uri, function (response) {
response.pipe(res);
});
Este código utiliza el Stream pipe para pasar los datos de respuesta de GitHub directamente al cliente.
- Guarda el archivo
proxy.js.
Iniciar el servidor proxy inverso
En este paso, aprenderás a iniciar el servidor proxy inverso y a probarlo.
- Abre una terminal y navega hasta el directorio del proyecto.
- Ejecuta el siguiente comando para iniciar el servidor proxy inverso:
node proxy.js
Deberías ver la siguiente salida:
Server running at http://localhost:8080/
- Abre otra terminal y ejecuta el siguiente comando para probar el proxy inverso:
curl --connect-timeout 2 -m 5 localhost:8080/pricing | grep GitHub
Este comando envía una solicitud al servidor proxy inverso, el cual a su vez recupera el contenido del sitio web de GitHub y lo devuelve al cliente.
- Deberías ver la información de precios de GitHub mostrada en la terminal.

¡Felicidades! Has creado con éxito un proxy inverso utilizando Node.js. Ahora puedes experimentar con el proxy inverso modificando el código y probando diferentes escenarios.
Resumen
¡Felicidades! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.



