我正在尝试从 Atlas 函数向 iOS 客户端发送推送通知,但我在线上收到错误
Error sending notification: FunctionError: TypeError: Value is not an object: undefined
await admin.messaging().send(message);
功能如下:
async function sendPushNotification(token, title, body) {
const admin = require('firebase-admin');
const credentials = {
projectId: '<project id>',
clientEmail: '<client email>',
privateKey: '<private key>',
};
admin.initializeApp({
credential: admin.credential.cert(credentials)
});
const message = {
notification:{
body: body,
title: title
},
token: token
};
try {
await admin.messaging().send(message);
console.log('Notification sent successfully');
} catch (error) {
console.error('Error sending notification:', error);
}
}
知道为什么会发生这种情况吗?
技术堆栈:
firebase-admin
对 Atlas 函数的依赖。我尝试过:
admin
、admin.messaging()
和 admin.messaging.send
- 它们都很好(并非未定义)。message
、message.notification
、message.token
- 也很好(不是未定义)。我有同样的错误:
错误日志: 发送通知时出错:FunctionError:TypeError:值不是对象:未定义
你是如何解决这个问题的?