Tutoriales y Manuales
Entradas Mensuales
-
▼
2025
(Total:
32
)
-
▼
enero
(Total:
32
)
- Los cambios en la moderación de Meta permiten llam...
- AMD anuncia sus nuevos procesadores gaming de sobr...
- Los nuevos procesadores Core Ultra 200 de Intel de...
- Razer presenta un prototipo de silla con calefacci...
- ¿Quieres un adaptador de cassette con Bluetooth? ¡...
- Megafiltración de datos en call center expone a 7 ...
- Túnel SSH port forwarding: Local, remote y dynamic
- Herramientas de IA gratuitas que debes conocer
- ChatGPT reconoce que pierden dinero incluso con la...
- Hackean los datos de los miembros de la argentina ...
- Publicar automáticamente de un Feed RSS a Telegram...
- ¿Qué es un webhook?
- Nvidia presenta las nuevas tarjetas gráficas GeFor...
- Qué es el rate limit y por qué debes limitar petic...
- Monitorización HDD y SSD con SMART en OPNsense con...
- ¿Qué es la tecnología HARM de discos duros? ¿Qué i...
- Alternativas gratuitas al Escritorio Remoto: RustD...
- Uptime Kuma, monitoreo de servicios y más
- El CAPTCHA de DOOM
- La importancia de la pasta térmica del procesador
- Intel XMP VS AMD EXPO
- Vulnerabilidad crítica en Nuclei que permite ejecu...
- Detenido un soldado estadounidense de 20 años que ...
- DoubleClickjacking: la nueva amenaza de los dobles...
- OPNsense IPv6 tunnel con Hurricane Electric Tunnel...
- Configurar Dynamic DNS (DDNS) en OPNsense
- Cómo escanear documentos y convertirlos a PDF dire...
- ¿Qué es la ventana de contexto en IA?
- Estados Unidos ofrece 10 millones de dólares por l...
- Apple pagará 95 millones de dólares para resolver ...
- Exploit DoS para LDAP Nightmare (CVE-2024-49112)
- 0.0.0.0 : ¿Qué es la Dirección IP “cero” ?
-
▼
enero
(Total:
32
)
-
►
2024
(Total:
1110
)
- ► septiembre (Total: 50 )
-
►
2023
(Total:
710
)
- ► septiembre (Total: 65 )
-
►
2022
(Total:
967
)
- ► septiembre (Total: 72 )
-
►
2021
(Total:
730
)
- ► septiembre (Total: 56 )
-
►
2020
(Total:
212
)
- ► septiembre (Total: 21 )
-
►
2019
(Total:
102
)
- ► septiembre (Total: 14 )
-
►
2017
(Total:
231
)
- ► septiembre (Total: 16 )
-
►
2016
(Total:
266
)
- ► septiembre (Total: 38 )
-
►
2015
(Total:
445
)
- ► septiembre (Total: 47 )
-
►
2014
(Total:
185
)
- ► septiembre (Total: 18 )
-
►
2013
(Total:
100
)
- ► septiembre (Total: 3 )
-
►
2011
(Total:
7
)
- ► septiembre (Total: 1 )
Blogroll
Etiquetas
Entradas populares
-
Después de ver qué es una vCPU y la diferencia entre núcleos (cores) e hilos en los procesadores, pasamos a explicar toda la nomenclatura d...
-
Si alguna vez quieres acceder a tu PC de forma remota, probablemente hayas oído hablar de Chrome Remote Desktop . Es una extensión para Chro...
-
CVE-2024-49112 es una vulnerabilidad crítica en el cliente LDAP de Windows que según Microsoft permite la ejecución remota de código. Este e...
¿Qué es un webhook?
Imagina que tienes una tienda online y deseas proponer un descuento especial a cualquier usuario que abra tu email durante las primeras 24 horas. La primera opción es la manual, es decir, comprobar las estadísticas de los emails regularmente y enviar el código de descuento a quienes hayan abierto tu mensaje. No suena muy rápido, ¿verdad? La segunda opción es automatizarlo con webhooks, que enviarán el descuento a cualquiera que abra tu email.
En pocas palabras, los webhooks son eventos que desencadenan acciones. Su nombre se debe a que funcionan como "ganchos" o “anzuelos” de los programas en internet y casi siempre se utilizan para la comunicación entre aplicaciones web. Son la manera más sencilla de obtener un aviso cuando algo ocurre en otro sistema.
¿Qué es un webhook?
Un webhook consiste en una comunicación ligera basada en eventos que envía datos automáticamente entre las aplicaciones a través del protocolo HTTP. Los webhooks, que se activan por eventos específicos, automatizan la comunicación entre las interfaces de programación de aplicaciones (API) y se pueden utilizar para ejecutar flujos de trabajo, como en los entornos de GitOps.
Dado que conectan las fuentes de eventos con las soluciones de automatización, son una forma de iniciar la automatización basada en eventos para llevar a cabo acciones de TI cuando se produce un evento específico.
Webhooks para el desarrollo de aplicaciones
¿Qué es una API?
Las API son conjuntos de definiciones y protocolos que se utilizan para diseñar e integrar el software de las aplicaciones. La comunicación entre ellas suele considerarse como un contrato entre el usuario y el proveedor de la información, en el cual se establece el contenido que necesita el consumidor (la llamada) y el que requiere el productor (la respuesta). También puede definirse como una relación en la cual la aplicación cliente llama a la aplicación servidor, pero estas funciones pueden invertirse según la aplicación que solicite los datos en determinada situación.
Por lo general, las API web utilizan el protocolo HTTP para solicitar datos de otras aplicaciones y definir la estructura de los mensajes de respuesta, que suelen ser archivos XML o JSON. Estos son los formatos preferidos porque presentan los datos de una manera fácil de manejar para otras aplicaciones.
Cuando la API cliente llama a la API servidor para solicitarle datos, busca comprobar si se ha producido un evento determinado, es decir, si los datos del servidor se modificaron de manera que puedan ser útiles para el cliente. En este proceso (conocido como consulta), el cliente envía solicitudes de HTTP de forma regular hasta que la API del servidor le devuelve los datos correspondientes, que suelen denominarse carga útil.
Dado que la aplicación cliente no conoce el estado de la aplicación servidor, envía una consulta a su API para obtener actualizaciones. La llamada persiste hasta que se produce el evento específico, pero el servidor solo enviará los datos solicitados una vez que la información esté disponible. La aplicación cliente debe seguir solicitando la actualización y esperar hasta que se produzca el evento correspondiente.
¿Cuáles son los aspectos característicos de los webhooks?
Para configurar un webhook, el cliente proporciona una URL única a la API servidor y especifica el evento sobre el cual desea obtener información. Luego de configurarlo, el cliente ya no tendrá que hacerle más consultas al servidor, dado que este le enviará automáticamente la carga útil correspondiente a la URL del webhook cuando se produzca el evento específico.
Los webhooks también se conocen como API inversas o API push porque, al usarlos, quien debe encargarse de la comunicación es el servidor, en vez del cliente. Es decir, el servidor le envía al cliente una solicitud POST única de HTTP cuando los datos están disponibles, en lugar de que el cliente le envíe solicitudes de HTTP hasta obtener una respuesta. A pesar de las denominaciones que se utilizan para los webhooks, no son API, sino que ambos funcionan en conjunto. Las aplicaciones deben tener una API para usar un webhook.
El nombre webhook es tan solo la combinación entre la palabra web, en referencia a su comunicación basada en el protocolo HTTP, y la función de programación de enlaces (hooking) que permite a las aplicaciones interceptar llamadas u otros eventos que podrían ser útiles. Los webhooks enlazan el evento que se produce en la aplicación servidor y le solicitan que envíe la carga útil al cliente a través de la web. En 2007, Jeff Lindsay realizó una publicación en su blog que ayudó a popularizar el concepto: "Web hooks to revolutionize the web".
Los equipos de TI utilizan diversos métodos para proteger las aplicaciones que se comunican mediante webhooks. La mayoría de ellas agrega una clave secreta en el encabezado de la solicitud de la carga útil para que el cliente pueda confirmar la identidad del servidor. Los webhooks suelen estar protegidos con la función de seguridad de la capa de transporte (mTLS) de autenticación mutua, que verifica tanto al cliente como al servidor antes de enviar la carga útil. También es habitual que las aplicaciones cliente utilicen el cifrado SSL para la URL del webhook, de modo de garantizar la privacidad de los datos que se transfieren.
Los webhooks:
- Eliminan la necesidad de efectuar consultas. Esto permite que la aplicación cliente pueda ahorrar recursos.
- Se configuran rápidamente. Si una aplicación es compatible con los webhooks, se pueden configurar fácilmente a través de la interfaz de usuario de la aplicación servidor. Aquí es donde introduces la URL del webhook de tu aplicación y estableces algunos parámetros básicos, como el evento que te interesa.
- Automatizan la transferencia de los datos. La carga útil se envía ni bien se produce el evento específico en la aplicación servidor, por lo que es el evento el que inicia el intercambio, el cual se produce de manera casi instantánea, al igual que las transferencias de datos del servidor al cliente.
- Son apropiados para cargas útiles ligeras y específicas. Los webhooks confían en que el servidor determinará la cantidad de datos que debe enviar y que el cliente interpretará la carga útil y la utilizará de forma productiva. Dado que el cliente no controla el momento exacto en que se realiza la transferencia de datos ni su tamaño, los webhooks se ocupan de pequeñas cantidades de información entre dos extremos, por lo general a través de notificaciones.
¿Cuál es la diferencia entre un webhook y una API?
En muchas ocasiones se mencionan juntos, porque pueden realizar funciones similares. Tanto las API como los webhooks permiten la comunicación entre dos aplicaciones web. La principal diferencia es la forma en la que comunican la información.
Las aplicaciones pueden comunicarse entre sí para compartir información con sondeos (polling, en inglés) o webhooks. En nuestro ejemplo anterior, polling sería ir al banco y preguntar tu saldo cada vez que sacas dinero, y esto es lo que hace una API.
Por otra parte, cuando necesitamos una manera más fácil de obtener la información en tiempo real, podemos recurrir a los webhooks.
De esta forma se envía la información del evento cuando ocurre, sin necesidad de solicitar cada cierto tiempo una gran transferencia de datos que tu sistema deberá analizar (con el riesgo de sufrir una sobrecarga o una pérdida de todos los datos si algo falla).
Emplear webhooks es normalmente una solución más sencilla y fácil, ya que son mensajes automáticos que las aplicaciones envían cuando ocurre algo y requieren de menos conocimientos técnicos para implementarse.
Cómo funcionan los webhook: La explicación técnica
Los webhooks son puntos de retrollamada HTTP, por lo general, definidos por el usuario. Permiten registrar una dirección http:// o https:// donde se almacenan los datos del evento en formato JSON o XML. Después, podrás hacer lo que quieras con los datos que recuperes y almacenes de un determinado evento.
La mecánica principal de los webhooks consiste en enviar una solicitud HTTP POST a la URL especificada por un usuario cuando ocurre algo. Esto te permite utilizar los webhooks cómodamente para notificaciones en tiempo real.
Esta URL se llama extremo de webhook. Los extremos de webhook deben ser públicos y es importante que la URL pertenezca al sistema receptor. La retrollamada se activa si se produce un evento que deseas notificar a otro sistema.
Si quieres conocer más sobre webhooks y cómo se utilizan en desarrollo web, Github ofrece un resumen excelente que te puede servir como toma de contacto.
Un webhook está compuesto por una instrucción o serie de instrucciones que permiten enviar un HTTP POST a su endpoint, o extremo cuando tiene lugar un evento determinado en la aplicación para la que se configura. Este extremo es una URL que permite recoger la información del evento y almacenarla o actuar sobre ella.
Volvamos al ejemplo del cajero. Al sacar dinero, tu banco recibe el aviso, actualiza tu saldo y el sistema interpreta que debe enviarte un SMS con todos los detalles.
Los webhooks siguen el mismo principio. El cajero es una aplicación/web de terceros (proveedor webhook) que envía una señal cuando ocurre un evento específico. El sistema que te envía el SMS es lo que conocemos como un "oyente". El oyente es la URL que recibe los webhooks y ejecuta una acción predefinida a continuación, en este caso, enviar un SMS.
Los webhooks son un mecanismo de programación diseñado para recibir, en tiempo real, información que se origina en un sistema externo. En este caso, el sistema es la cuenta bancaria. ¿Lo vas pillando?
¿Qué posibilidades te ofrecen los webhooks? Entre otros casos de uso, puedes:
Sincronizar sistemas en tiempo real.
Enviar cualquier tipo de notificación.
Procesar los datos como quieras.
Crear informes.
¡Y todo lo que puedas imaginar!
¿Para qué sirven los webhooks?
El uso de webhooks se centra en:
Recibir información sobre un evento y almacenarla.
Recibir información sobre un evento y comunicarla.
Vamos a ver más de cerca estos dos escenarios.
Recibir información sobre un evento y almacenarla
El método "push" es el más sencillo para usar webhooks. Como ya hemos indicado, no es necesario "sondear" tus datos cada pocos minutos en busca de nueva información. Puedes recibirla directamente con la ayuda de los webhooks.
Además, podrás almacenarla hasta que te haga falta para otra cosa. En definitiva, el sistema en el que configuraste el webhook te hará llegar la información que necesites en cuanto la tenga.
Recibir información sobre un evento y comunicarla
La denominada "tubería" (pipe) se produce cuando el webhook no solo recibe la información que "oye", sino que la utiliza para hacer algo nuevo, como desencadenar acciones.
Por ejemplo, puedes crear un script, registrar esa URL de webhook en tu web y enviar un mensaje de bienvenida a su dirección de correo cuando un visitante crea una cuenta. O crear un script que actualice la cantidad de productos disponibles cada vez que se efectúa una nueva compra. O conectar servicios web entre sí, por ejemplo, una pasarela de pagos con tu sistema de facturación.
Fuentes:
https://www.redhat.com/es/topics/automation/what-is-a-webhook
0 comentarios :
Publicar un comentario
Los comentarios pueden ser revisados en cualquier momento por los moderadores.
Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.
Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.