CORS Proxy calls with Cloud Functions
git clone git@github.com:7kfpun/cors-proxy.git
Create a Firebase Project on the Firebase Console.
Set up your Firebase project by running firebase use --add
, select your Project ID and follow the instructions.
You need to have installed the Firebase CLI. If you haven't run:
npm install -g firebase-tools
Doesn't work? You may need to change npm permissions.
First you need to install the npm
dependencies of the functions:
cd functions && npm install; cd ..
This installs locally:
- The Firebase SDK and the Firebase Functions SDK.
- The cors npm package to allow Cross Origin AJAX requests on the endpoint.
- The node-fetch npm package to bring window.fetch to Node.js.
Deploy to Firebase using the following command:
firebase deploy
This deploys and activates the cors Function.
The first time you call
firebase deploy
on a new project with Functions will take longer than usual.
After deploying the function you can open the following URLs in your browser:
curl https://us-central1-<project-id>.cloudfunctions.net/cors?url=https%3A%2F%2Fapi.ipify.org%3Fformat%3Djson
You can also send the format in the request body. For instance using cURL in the command line:
curl -X POST \
-H 'Content-Type: application/json' \
-d '{"url": "https://api.ipify.org/?format=json"}' \
https://us-central1-<project-id>.cloudfunctions.net/cors
Released under the MIT License.