angularfire icon indicating copy to clipboard operation
angularfire copied to clipboard

Callable functions with custom region not working, Unauthenticated error

Open rubenheymans opened this issue 2 years ago • 2 comments

Version info

Angular: 15.2.2

Firebase: 9.23.0

AngularFire: 7.6.1

How to reproduce these conditions

Steps to set up and reproduce

  1. Create angular 15 project
  2. Add angularfire
  3. Create callable functions with custom region

Debug output

** Errors in the JavaScript console **

main.fc6d01fc3332ae31.js:1 ERROR Error: Uncaught (in promise): Error: FirebaseError: Unauthenticated
Error: FirebaseError: Unauthenticated

** Output from firebase.database().enableLogging(true); **

How/where do I enable this?

Callable function:

import { region } from 'firebase-functions';

export const getInvoicesPerQuarter= region('europe-west1')
  .https.onCall(async (data: { id: string; invoiceNumber: string }, context) => {
...
})

app.module.ts:

   provideFunctions(() => {
      const functions = getFunctions(getApp(), 'europe-west1');
      // const functions = getFunctions();
      if (environment.useEmulators) {
        connectFunctionsEmulator(functions, 'localhost', 5001);
      }
      return functions;
    }),

firebase.json:

{
  "hosting": [
    {
      "rewrites": [
        {
          "source": "/getInvoicesPerQuarter",
          "function": "getInvoicesPerQuarter"
        }
      ]
    },

angular component:

import { Functions, httpsCallableData } from '@angular/fire/functions';

 const getInvoicesPerQuarterCallable: (data: {
          year: number;
          quarter: number;
        }) => Observable<string> = httpsCallableData<
          { year: number; quarter: number },
          string
        >(this.functions, 'getInvoicesPerQuarter');

        const result = await firstValueFrom(
          getInvoicesPerQuarterCallable({ year, quarter }),
        );

Calling this callable function works in the emulator. I deploy this to firebase. I doesn't work on production and I get the Unauthenticated error. I already contacted firebase support but everything looks fine and they say it's an AngularFire issue and can't help me. Functions are V1.

rubenheymans avatar Jul 13 '23 08:07 rubenheymans

This issue does not seem to follow the issue template. Make sure you provide all the required information.

google-oss-bot avatar Jul 13 '23 08:07 google-oss-bot

i have the same issue.

the callable functions with custome region always call's https://us-central1-.......

ChristianFenkart avatar Feb 23 '24 18:02 ChristianFenkart