Una aplicación ASP.NET Core (.NET 9) para recibir y procesar notificaciones de estado de tracking vía webhook.
- API endpoint para recibir notificaciones de estados de tracking
- Registro automático de notificaciones recibidas en un archivo de log
- Modelo de datos estructurado para el procesamiento de notificaciones
- ASP.NET Core Razor Pages (.NET 9)
- C# 13.0
- JSON para la serialización/deserialización de datos
Controllers/WebhookController.cs: Controlador que recibe las notificaciones webhookModels/WebhookTransoftweb/: Modelos de datos para las notificaciones
- Clonar el repositorio
- Ejecutar el proyecto con
dotnet runo desde Visual Studio - Utilizar herramientas como Postman para enviar una solicitud POST a:
http://localhost:[puerto]/api/transoftweb/notification
Para probar el endpoint desde internet sin necesidad de un servidor, puedes usar ngrok:
-
Instalar ngrok:
- Descargar desde ngrok.com
- Extraer el archivo y seguir las instrucciones de registro
-
Ejecutar tu aplicación localmente:dotnet run Toma nota del puerto (por ejemplo, 5000)
-
Abrir un túnel con ngrok:ngrok http 5000 Reemplaza "5000" con el puerto donde se ejecuta tu aplicación
-
Usar la URL proporcionada: ngrok te dará dos URLs (HTTP y HTTPS), como:https://abc123.ngrok.io -> http://localhost:5000
-
Enviar solicitudes al endpoint público:https://abc123.ngrok.io/api/transoftweb/notification La ventaja de ngrok es que proporciona automáticamente HTTPS y es accesible desde cualquier lugar en internet, facilitando las pruebas con servicios externos que necesiten enviar webhooks a tu API.
{ "NotificationCode": "123", "Data": { "TrackingCode": "ABC123", "Status": "Delivered", "StatusDescription": "Entregado en domicilio", "StatusDate": "2024-06-01T14:30:00" } }
Este proyecto está bajo la Licencia MIT.