A toolkit to create code-first HTTP Reverse Proxies hosted in ASP.NET Core as middleware. This allows focused code-first proxies that can be embedded in existing ASP.NET Core applications or deployed as a standalone server. Deployable anywhere ASP.NET Core is deployable such as Windows, Linux, Containers and Serverless (with caveats). Having built proxies many times before, I felt it is time to make a package. Forked from ASP.NET labs, it has been heavily modified with a different API, to facilitate a wider variety of proxying scenarios (i.e. routing based on a JWT claim) and interception of the proxy requests/responses for customization of headers and (optionally) request/response bodies. It also uses HttpClientFactory internally that will mitigate against DNS caching issues making it suitable for microservice/container environments.
Features
- Forward HTTP Requests
- Forward WebSocket Requests
- Customize the upstream HTTP request
- Customize the upstream response
- Client Sent X-Forwarded-Headers
- Configure the ProxyKit's HttpClient