gpt4 book ai didi

Firebase 云函数 "admin.messaging(...).send is not a function"

转载 作者:行者123 更新时间:2023-12-04 17:30:37 26 4
gpt4 key购买 nike

我在 Firebase Functions 服务中有一个函数可以发送任何 FCM。
我会使用 admin.messaging().send() 函数,比如 this reference guide ,但我在触发功能时收到此错误,而不是在部署期间:

TypeError: admin.messaging(...).send is not a function
at exports.sendChatNotification.functions.database.ref.onCreate.event (/user_code/lib/index.js:113:30)
at Object.<anonymous> (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:59:27)
at next (native)
at /user_code/node_modules/firebase-functions/lib/cloud-functions.js:28:71
at __awaiter (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:24:12)
at cloudFunction (/user_code/node_modules/firebase-functions/lib/cloud-functions.js:53:36)
at /var/tmp/worker/worker.js:700:26
at process._tickDomainCallback (internal/process/next_tick.js:135:7)

我可以在 Firebase 控制台中的 Functions->Log 中看到此错误。
这是我的功能代码:
 exports.sendChatNotification = functions.database.ref('/messages').onCreate(event => {

var message = {
data: {
title: 'title',
body: 'body',
},
apns: {
header: {
'apns-priority': '10',
'apns-expiration':'0'
},
payload: {
aps: {
sound: 'default',
'content-available':'1'
}
}
},
android: {
ttl: 60*1000,
priority: 'high'
},
topic: 'mytopic'
};

return admin.messaging().send(message);

});

如果我使用 admin.messaging().sendToTopic() 和(改变消息结构)它工作正常。 Firebase 似乎不支持自己的 API。

我使用 Firebase 工具部署它,命令行为“firebase deploy”。
我在我的函数项目中更新了 firebase-tools 和 firebase-functions 和 firebase-admin。

最佳答案

在 firebase-admin 5.9.0 中添加了 send() 函数。如果你想使用它,你应该运行 npm install firebase-admin@latest在您的功能文件夹中安装最新版本。在撰写本文时,最新版本为 5.9.1。

关于Firebase 云函数 "admin.messaging(...).send is not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49120795/

26 4 0
文章推荐: javascript - 使用 javascript 动态更改