Как читать / обновлять экземпляры объектов, преобразованные в JSON из Firebase - PullRequest
0 голосов
/ 21 июня 2020

В настоящее время я застрял в процессе получения классов, хранящихся как JSON в firebase (я преобразовал каждый экземпляр объекта в JSON и сохранил его). Моя основная цель - прочитать часть данных (при встрече, которая также является объектом JSON) в объекте JSON (meeting), хранящемся как значение в Firestore, используя nodejs в облачных функциях, как и я. пытаюсь создать уведомление pu sh с помощью FCM.

Код, который у меня есть:


    exports.meetingsUpdate = functions.firestore.document('/meetings/{meetingId}')
        .onWrite(async (snap,context) => {
            var data = snap.after.data()
            data = await data.meeting;
            const obj = await data.meeting;
            const uids = await obj.groupUID;
            const requestor = await obj.requesterName;
            const payload = {
            notification: {
                title: 'Meeting request',
                body: 'You have a meeting request from ' + requestor
            }
        }
        for (uid of uids) {
            // eslint-disable-next-line no-await-in-loop
            const doc = await admin.firestore()
                        .collection('userNotificationTokens')
                        .doc(uid)
                        .get()
            // eslint-disable-next-line no-await-in-loop
            const token = await doc.data().token
            // eslint-disable-next-line no-await-in-loop
            const response = await admin.messaging().sendToDevice(token, payload)
            .then((res) => {
                console.log("Message sent successfully!", res.body) 
            });
        }
        return null;
    

        })

Вот как выглядит отображение моей базы данных с атрибутом встречи, представляющим объект JSON

Я относительно новичок в Firebase и ее функциях, и у меня возникли ошибки, такие как

SyntaxError: неожиданный токен u в JSON в позиции 0

TypeError: Невозможно прочитать свойство groupUID из undefined

TypeError: Невозможно прочитать свойство 'token' неопределенного

в течение некоторого времени, несмотря на попытки различных подходов и настроек.

Первое значение встречи - это объект JSON, а второй атрибут встречи также является объектом JSON. Приносим извинения за несколько запутанное хранение данных.

...