AsyncProxy - Python Programming Task
Your task is to build an asynchronous HTTP proxy (see definition in RFC2616) complying to the requirements specified below.
Requirements
-
Range requests must be supported as defined in RFC2616, but also via
range
query parameter. -
HTTP 416 error must be returned in case where both header and query parameter are specified, but with a different value.
-
Program must start with a single command
docker-compose up
. -
Proxy must be reachable at
http://<docker-host>:8080
. -
Usage statistics must be available at
http://<docker-host>:8080/stats
- total bytes transferred
- uptime
-
Code must run with Python 3.5+.
-
Code must be delivered as a link to public GitHub repository.