If I needed to write a reverse proxy server, could Sparkle be used to do it easily? Where would you start, if the answer to the previous question is yes?
In my case, I need to channel HTTP(s) traffic through it, looking at the data and adding/removing/replacing/blocking/logging things, which Sparkle middleware components would be perfect for.
It's theoretically possible, you should just get the request and from the Spakrle server just build a similar request to the target server, get the response and give the response back to the Sparkle client.
It might be easy for a proof of concept, but for a production server there is many more involved - reprocessing headers, optimized implementation, etc.
But why reinventing the wheel, I would recommend using a free, open source proxy server that is available out there, e.g, Nginx or Traefik. There is no Delphi business logic involved and it servers a single purpose, i.e., you just install and use it, rarely you need to extend it with logic that you would write with Delphi.