8000 GitHub - lmartinezsch/link_tracker: Challenge: Link Tacker es un sistema para tracker enmascarar URLs y poder obtener analítica de cuantas veces se llamó a cada uno de los links, así como también agregar reglas de negocio para el funcionamiento del redirect.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Challenge: Link Tacker es un sistema para tracker enmascarar URLs y poder obtener analítica de cuantas veces se llamó a cada uno de los links, así como también agregar reglas de negocio para el funcionamiento del redirect.

Notifications You must be signed in to change notification settings

lmartinezsch/link_tracker

Repository files navigation

Link Tracker

Este proyecto es un sistema para rastrear y enmascarar URLs, permitiendo obtener análisis de cuántas veces se accedió a cada enlace, así como también agregar reglas de negocio para el funcionamiento del redireccionamiento.

Instalación

Para instalar las dependencias del proyecto, ejecuta el siguiente comando:

npm install

Configuración

El proyecto utiliza variables de entorno para la configuración. Crea un archivo .env en la raíz del proyecto y configura las variables necesarias. Puedes encontrar un ejemplo en el archivo .env.example. El proyecto utiliza base de datos Postgresql, deberás tener creada la base de datos previamente para que funcione.

Uso

Ejecutar en modo desarrollo

npm run start:dev

Esto iniciará el servidor en modo de desarrollo y estará disponible en http://localhost:3001.

Ejecutar en modo producción

npm run start:prod

Esto iniciará el servidor en modo de producción.

Endpoints

Crear un enlace

POST /links

Crea un enlace a partir de una URL válida y devuelve la URL enmascarada a utilizar.

Parámetros de entrada

  • url (string): URL válida a enmascarar.
  • password (string, opcional): Contraseña opcional para acceder al enlace.

Ejemplo de solicitud

{
  "url": "https://www.ejemplo.com",
  "password": "secreto"
}

Ejemplo de respuesta

{
  "target": "https://www.ejemplo.com",
  "link": "https://maskedurl.com/abcd",
  "valid": true
}

Redireccionar a un enlace

GET /links/redirect?link=<link>&password=<password>

Redirecciona a la URL enmascarada. Si el enlace es inválido, devuelve un error 404.

Parámetros de entrada

  • link (string): Enlace enmascarado.
  • password (string, opcional): Contraseña si se requiere.

Obtener estadísticas de un enlace

GET /links/:id/stats

Obtiene las estadísticas de cantidad de veces que se redirigió a un enlace.

Parámetros de entrada

  • id (string): ID del enlace.

Ejemplo de respuesta

{
  "count": 5
}

Invalidar un enlace

PUT /links/invalidate?link=<link>

Invalida un enlace, haciendo que devuelva un error 404 al intentar acceder.

Parámetros de entrada

  • link (string): Enlace a invalidar.

Recuerda reemplazar y con los valores adecuados en las descripciones de los endpoints.

About

Challenge: Link Tacker es un sistema para tracker enmascarar URLs y poder obtener analítica de cuantas veces se llamó a cada uno de los links, así como también agregar reglas de negocio para el funcionamiento del redirect.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0