Я развернул следующую тестовую функцию https.onCall
в облачных функциях на firebase - развернут с использованием узла 10:
export const helloWorld = functions.https.onCall((data, context) => {
return {
"message": "Hello, world",
}
});
Эта функция возвращает ожидаемый результат при тестировании из среды узла.
Однако в моем приложении для флаттера (android) - с помощью плагина Облачные функции для флаттера я получаю следующую ошибку аутентификации, несмотря на то, что вошел в систему (с помощью аутентификации по номеру телефона):
Код флаттера:
void _checkAuth() async {
print("Check auth");
final FirebaseAuth _auth = FirebaseAuth.instance;
var user = await _auth.currentUser();
print(user.toString());
_testFunCall();
}
void _testFunCall() async {
HttpsCallable callable = CloudFunctions.instance
.getHttpsCallable(functionName: 'helloWorld');
try {
final HttpsCallableResult result = await callable.call();
print(result.data);
} on CloudFunctionsException catch (e) {
print('caught firebase functions exception');
print(e.code);
print(e.message);
print(e.details);
} catch (e) {
print('caught generic exception');
print(e);
}
}
Ошибка:
I/flutter ( 4662): caught firebase functions exception
I/flutter ( 4662): UNAUTHENTICATED
I/flutter ( 4662): Unauthenticated
I/flutter ( 4662): null
Есть идеи?