What you'll learn:
- What Webhooks are and how to build them using C# and .NET 5
- How to build REST APIs using C# and .NET 5
- Use JavaScript (and "fetch") to make API Calls
- How to create multiple HttpClients using HttpClient Factory in .NET
- What RabbitMQ is and how you can use it to enhance your solutions
- How to run SQL Server and RabbitMQ Servers with Docker Compose
- How to add Dependency Injection to a basic .NET Console app
- Automapper and Data Transfer Objects
In this hands-on, "no fluff / no filler" course we take a practical approach to building a working solution that uses Webhooks. We'll cover some theory to start, but very quickly we jump into the practical step by step solution build which forms the vast majority of the course.
During the build, we will create 3 separate .NETProjects to simulate a fictional airline and its travel-agent customers. This approach will give students a real-world grounding in the use of webhooks and the value they bring to industry. The projects we build are:
Airline Web
Webhook Registration RESTAPI
Flight Details RESTAPI - used to trigger webhook by publishing to RabbitMQmessage bus
Simple HTML / JavaScript / Bootstrap Web Client to make webhook registration APIcalls
Airline Send Agent
Stand alone "agent" used to send webhooks "en-mass"
Dependency Injection enabled
RabbitMQSubscriber / Consumer with event based message delivery
Uses HttpClient and HttpClientFactory
Travel Agent Web
Simple Webhook POSTEndpoint
Uses SQLServer backend to retrieve webhook "secret" to authenticate webhooks
We also use Docker Compose to set up and run following solution fabric:
RabbitMQServer
Microsoft SQLServer
Students should be aware that we use VSCode as the development tool of choice, so students wanting to learn with Visual Studio should consider this carefully before purchasing.
Source Code is downloadable as a Lecture Resource.
Slideware is downloadable as a Lecture Resource