Firebase 云函数从列表中获取子项的内部子项(nodeJs)

Firebase Cloud Function get inner child of child from list (nodeJs)

尝试从 Infos Child 中的每个子项获取所有 'Token' 值,当数据库事件 onUpdate 触发时,但似乎我错了 任何解决方案?

   var allTokens = [];

    await admin.database().ref('/Roles/Livreurs').once("value", function (snapshot) {

        snapshot.forEach(function (childSnapShot) {

            childSnapShot.forEach(function (innerChild) {
                var token = innerChild.val().Token;
                allTokens.push(token);
            });
        });
    });

如果您不知道 JSON 中某个级别的密钥,您只需要 forEach,在您的情况下,这仅适用于用户 ID。对于您知道密钥的任何级别,您可以使用 child(thatkey) 获取该子快照。

所以我认为您正在寻找:

let allTokens = await admin.database().ref('/Roles/Livreurs').once("value", function (snapshot) {
    var result = [];
    snapshot.forEach(function (userSnapShot) {
        var token = userSnapShot.child("Infos/Token").val();
        result.push(token);
    });
    return result;
});

然后用作