使用EXPO + Firebase发送推送通知

时间:2019-07-08 12:00:23

标签: firebase react-native google-cloud-functions expo

我正在尝试使用expo令牌和firebase发送推送通知。 当我尝试通过博览会通知工具发送通知来测试博览会令牌时,它可以正常工作。 但是,当我使用Firebase检查推送通知时,它不起作用。 这是我的firebase函数index.js文件。

const functions = require('firebase-functions');
var fetch = require('node-fetch')
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);

exports.sendPushNotification = functions.database.ref('/UserOrders/').onCreate((snap, context) => {
    const root = snap.data.ref.root

    var messages = []

    return root.child('/PushNotification').once('value').then(function (snapshot) {
        snapshot.forEach(function (childSnapshot) {
            var expoToken = childSnapshot.val().expoToken;
            messages.push({
                "to": expoToken,
                "sound": "default",
                "body": "New enquiry. Please see!!"
            });
        });
        return Promise.all(messages)
    }).then(messages => {
        console.log('messages', messages)
        fetch('https://exp.host/--/api/v2/push/send', {
            method: 'POST',
            headers: {
                'Accept': 'application/json',
                'Content-Type': 'application/json',
            },
            body: JSON.stringify(messages)
        });
    }).catch(reason => {
        console.log('reason failure', reason)
    })
});

0 个答案:

没有答案