Ich versuche, einen Einfüge-Trigger auf Firebase mit der onWrite Methode zu imitieren. Die Einfügung erfolgt über POST-Anfragen, seit ich es teste (am einfachsten finde ich Datenbank Trigger). Der Trigger enthält das Schreiben der von Firebase generierten ID in die eingefügten Daten als neue Eigenschaft.Firebase-Datenbank auf Push erhalten ID
My Cloud-Funktion ist folgende:
exports.onNewSeries = functions.database.ref('/series').onWrite(event => {
"use strict";
console.log(event.data.key);
console.log(event.data.current.key);
console.log(event.data.current);
});
Beide erste logs denselben Schlüssel enthalten (series
), die eigentlich die Schlüssel des übergeordneten Knoten ist, wo die neuen Daten angehängt wird, statt des neuen Datenschlüssel (in der schrulligen Form von -adfaa123sdfasdf
). Das letzte Protokoll gibt eine Firebase-Struktur aus, die die neuen Daten sowie den generierten Schlüssel in einer _data-Eigenschaft enthält, auf die jedoch nicht zugegriffen werden kann.
Während dies manuell nach einer Anfrage getan werden kann, habe ich es nicht in einer Datenbank Trigger-Art automatisiert gesehen.