は、次のようなデータ構造を取ることができます:古い値と新しい値をFirewareのCloud機能と.onWriteまたはonchangeで比較するには?
今、私はFirebase機能付きaccessTokenFacebookをリフレッシュしたいです。 私は2つのオプションをテストした:
onWrite- 、および:私にonChanged
onWriteが最もよく似合う
exports.getFacebookAccessTokenOnchange = functions.database.ref('/users/{uid}/userAccountInfo/lastLogin').onWrite(event => {
const lastLogin = event.data;
let dateObject = new Date();
let currentDate = dateObject.toUTCString();
return lastLogin.ref.parent.parent.child('services').child('facebook').update({'accessTokenFacebook': currentDate});
});
何かが起こりました、解決できません:userUIDレコード全体(クリーンアップ用)を削除すると、userUIDレコードが自動的に作成されます。/uid/services/facebood/accesTokenFacebook ...
また、削除によってonWriteがトリガーされるようです。
私も.onchangeを試しましたが、accessTokenFacebookがまだ存在しないときだけトリガーします。変更によってこの変更が行われたとき、変更は再びトリガされませんでした。
次に、私がしたいことは、古い値と新しい値との比較です。例がありますか?または、より良い解決策がありますか?
'functions.database.ref(...)onWrite(E =>はconsole.log( –
@Michael、速い応答:)それは簡単に見えます、私はできるだけ早くこれを試してみます。 – BushJopie
@Michael、Thx!私はうまく動作します。 – BushJopie