I created a Firebase Cloud function with functions.https.onRequest and I made it work like an API that responds with JSON data from the Firebase Realtime database.
However, I found out about functions.https.onCall which handles authentication and that's what I need because each user will only have access to it's own data.
I didn't find any useful documentation about Callable Cloud Functions with AngularFire on their page https://github.com/angular/angularfire/blob/master/docs/functions.md .They only show how to add some code in Angular but don't show a practical example of how to interact with a Cloud Function?
I use Cloud Functions v1 with Node.js v16.
"@angular/core": "^16.2.12",
"@angular/fire": "^7.5.0"
Found the documentations here https://github.com/angular/angularfire/blob/master/docs/compat/functions/functions.md
Import the NgModule Cloud Functions for AngularFire is contained in the @angular/fire/functions module namespace. Import the AngularFireFunctionsModule in your NgModule. This sets up the AngularFireFunction service for dependency injection.
Injecting the AngularFireFunctions service Once the AngularFireFunctionsModule is registered you can inject the AngularFireFunctions service.
Creating a callable function AngularFireFunctions is super easy. You create a function on the server side and then "call" it by its name with the client library.
method
httpCallable(name: string): (data: T) Creates a callable function based on a function name. Returns a function that can create the observable of the http call.
Configuration via Dependency Injection Functions Region Allow configuration of the Function's region by adding REGION to the providers section of your NgModule. The default is us-central1.
Cloud Functions emulator Point callable Functions to the Cloud Function emulator by adding USE_EMULATOR to the providers section of your NgModule.