typescript - AngularFire2 (@angular/fire) Hur får man fel från en callable-funktion?


Jag försöker komma åt ett anropbart funktionsfelmeddelande inom en Angular-miljö med hjälp av angular fire-paketet. Vänligen se följande kod:

Angular (Klientsidan)

async myCallableFunction(id: string) {
  try {
    const res = await this.afFunctions.httpsCallable('callableFunction')({
      id
    }).toPromise();

    console.log(res);
  } catch (err) {
    console.error('Error is:', err);
  }
}

Server-sidan (Firebase-funktion)

exports.callableFunction = functions.https.onCall((data: {
 id: string
}, context: https.CallableContext) => {
  // throw error for testing only
  throw new https.HttpsError('unknown', 'Test Error Message');
});

Och felmeddelandet som loggas till konsolen är:

[console.error]: "Fel är:" { "kod": "okänd", "rad": 100205, "kolumn": 32, "källaURL": "http://192.168.1.100:8100/vendor.js" }

Hur får jag åtkomst till felmeddelandet från svaret från Cloud Firestore?

Tack i förväg.

Svar #1

Jag har just fastnat med den här frågan under den senaste timmen, så jag lägger upp mitt svar för dem som vandrar hit :

console.error('Error is:', err);

visar inte hela innehållet i err-objektet. Om du vill komma åt någon av de 3 parametrarna i err-objektet måste du komma åt dem direkt :

  console.error(e.code);
  console.error(e.message);
  console.error(e.details);

Relaterade artiklar