Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/elvis-ndubuisi/quickproxi
Backend API proxy server with hidden API key, rate limiting and caching. Serves weather data to quick-weather ReactJs web app.
https://github.com/elvis-ndubuisi/quickproxi
caching express heroku proxy-server rate-limiting
Last synced: 23 days ago
JSON representation
Backend API proxy server with hidden API key, rate limiting and caching. Serves weather data to quick-weather ReactJs web app.
- Host: GitHub
- URL: https://github.com/elvis-ndubuisi/quickproxi
- Owner: elvis-ndubuisi
- Created: 2021-11-10T12:04:17.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2022-02-25T11:26:10.000Z (almost 3 years ago)
- Last Synced: 2024-11-06T20:31:39.464Z (2 months ago)
- Topics: caching, express, heroku, proxy-server, rate-limiting
- Language: JavaScript
- Homepage: https://quickproxi.herokuapp.com/
- Size: 37.1 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# **Weather API proxy** backend proxy server
Backend API proxy server with hidden API key, rate limiting and caching for [quick weather](https://quickweather.netlify.app/) ReactJs web app.
### _Installation_
- clone the repository
- install dependencies using `npm install` or `yarn install`
- start the server using `npm start` or `yarn start`### _Usage_
Get hostname/api/weather?q={city}
- https://quickproxi.herokuapp.com/api/weather?q=abujawhen sending request from a frontend web app.
The server only allows max of 20 requests simultaneously and send a "Too Many requests" error when requests exceeds max limit. Requests can be send again Only after 15 minutes.
### _Configuration_
Create a `.env` file with the following variables:
- `OWEATHER_BASE_URL`:open weather base url(https://api.openweathermap.org/data/2.5/weather)
- `OWEATHER_API_KEY`: {your open weather API key}
- `OWEATHER_APP_ID`: your open weather appId (appid)### _Installed Modules_
- express
- neddle
- cors
- dotenv
- express-rate-limit
- apicache