This is a Python Implementation of HTTP Proxy in two methods: Threaded & Async
This is done as part of the CS4010 Computer Networks Laboratory
HTTP Proxies acts as content filters on the HTTP traffic. These are fit on top of browsers by clients who can choose to process the any information being communicated
Here, we can create a Proxy server that acts like a gateway between users and the Internet
- Each request being sent is set such that the Connection field is made Closed instead of Keep-Alive
- Any Proxy connection is similarly converted into Closed instead of Keep-Alive
- We lower the HTTP version to HTTP 1.0
There are two implementations: Threaded and Async
We have made two executables which can be run on the command line
They each accept two arguments: host and port details
The log would be printed on the console
./Threaded/ThreadedProxySetup <server_address> <server_port>
./Async/AsyncProxySetup <server_address> <server_port>