Firebase + Flutter - облачные функции onCall приводят к ошибке «неаутентифицировано» из приложения Android - PullRequest
1 голос
/ 14 мая 2019

Я развернул следующую тестовую функцию 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

Есть идеи?

1 Ответ

1 голос
/ 14 мая 2019

Проблема заключалась в использовании узла 10 при развертывании в облачные функции.

Узел 10 в настоящее время находится в бета-версии.Переключился на узел 8, и он работает нормально:

В package.json в облачных функциях dir, переключите:

  "engines": {
    "node": "10"
  },

на:

  "engines": {
    "node": "8"
  },
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...