Я разрабатываю приложение во Flutter, и во время разработки я столкнулся с этой аномалией.
В базе данных Firebase Realtime У меня есть простой триггер для тестирования функциональности, триггер такой:
/**
* Triggered by a change to a Firebase RTDB reference.
*
* @param {!Object} event Event payload.
* @param {!Object} context Metadata for the event.
*/
exports.helloRTDB = (event, context) => {
const resource = context.resource;
// log out the resource string that triggered the function
console.log('Function triggered by change to: ' + resource);
// now log the full event object
console.log(JSON.stringify(event));
};
( Имя функции : createGame)
Функция для выполнения : helloRTDB
Тип триггера : Firebase База данных реального времени (бета)
Тип события : создание
База данных : my-db
Путь : / лобби / {userId}
Когда я запускаю это из Проверка функций облака на Платформа Google Cloud работает хорошо, но это не работает при запуске событие запуска из Flutter - Firebase Database SDK .
Тестирование облачных функций:
Flutter - база данных Firebase SDK:
class FirebaseLobbyRepository {
final lobbyCollection = FirebaseDatabase.instance.reference().child('lobby');
Future<void> test() {
return lobbyCollection.set('test'); // This work but attached trigger not.
}
}
Когда я вызываю метод test (), запись добавляется в RTDB, но триггер n не уволен! Почему?
Спасибо за помощь.