A simple proxy server built with Flask (Python). It can be used for hiding API keys as well as rate limiting. This uses the OpenWeather API, but you can easily change it to whatever public API you want. The project is a spinoff of Brad Traversy's Node API Proxy Server.
To install the dependencies you need to have Pipenv.
pipenv install
pipenv shell
Run on http://localhost:5000
flask run
pytest
Rename .env.example to .env and edit the values
If the public API URL is https://api.openweathermap.org/data/2.5/weather?q={city}&appid={APIkey}
- API_BASE_URL = "https://api.openweathermap.org/data/2.5/weather"
- API_KEY_NAME = "appid"
- API_KEY_VALUE = "YOUR API KEY"
You can add on any other query params as needed when hitting the /api endpoint such as https://yourdomain/api?q=Berlin without having to add your key in the client.
- Add new routes as you see fit
- Change rate limiting
This project is inspired by Brad Traversy's YouTube tutorial.