I am implementing a react-native application. Essentially, from this front-end application, I want to make an GET request to the Yelp Fusion API, which requires a Private API Key (which I have saved in my notes).
Considering a GET request with a private key should be executed from the server-side, and not the front-end react-native application, I wanted to implement this functionality through either Google Cloud Functions, or Firebase Functions.
Essentially, how do I trigger an event like this from a front-end Javascript client, and what do I need to set up on Firebase or Google Cloud Functions for this to work?
I was able to write a function in Firebase Functions, but I wasn't sure how to write a GET request to a URL external to the Google Cloud Platform. I also do not know how to trigger the request and receive data from the client side.
You can create a Cloud Function with a public HTTP trigger to accomplish this.
The samples on that page include HTTP based Cloud Functions.
Here's the doc on calling http triggers.
To deploy a Cloud Function with an public HTTP trigger:
gcloud functions deploy MYFUNCTION --runtime <your runtime> --trigger-http --allow-unauthenticated
This command allows anonymous access to call your functions, ordinarily you would need to be authenticated to do so.
Once you open a trigger to the internet though anybody can call it so keep that in mind with what data you accept and pass back. You may also want to set a budget on the project containing the function in case somebody were to calling it continuously racking up a bill for you.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With