我需要向成千上万的用户发送推送通知。但根据firebase文档,我一次只能发送给500个用户。
getMessaging().sendMulticast(message)
.then((response) => {
console.log(response.successCount + ' messages were sent successfully');
});
我可以处理多达1000用户使用这种方法
const registrationTokens = [
'YOUR_REGISTRATION_TOKEN_1',
// ...
'YOUR_REGISTRATION_TOKEN_n'
];
getMessaging().sendToDevice(registrationTokens, payload)
.then((response) => {
console.log('Successfully sent message:', response);
})
.catch((error) => {
console.log('Error sending message:', error);
});
有没有其他方法可以让我一次处理多个用户(>10000(?向主题发送消息是否可以解决此问题?或者它也有它的局限性
const message = {
data: {
score: '850',
time: '2:45'
},
topic: "topic"
};
// Send a message to devices subscribed to the provided topic.
getMessaging().send(message)
.then((response) => {
console.log('Successfully sent message:', response);
})
.catch((error) => {
console.log('Error sending message:', error);
});
实现这一点的一种方法是为特定路径的所有文件设置一个全局变量,并编辑该全局路径,而不是编辑每个其他路径。
示例:
全局js文件:
global var path = "/EXAMPLE/PATH"
特定html文件:
<body>
<script href = "PATH FOR THE GLOBAL FILE"></script>
<script href = path></script>
</body>
如果您使用Unix操作系统,您可能同时有sed和find命令。然后在shell中运行:
for file in $(find .); do sed -i '' "s/./app.js/../app.js/g" $file; done
首先,我们循环浏览当前目录中的所有文件:
for file in $(find .); do
然后,我们对每个文件运行replace命令,将"./app.js"替换为"../app.js".
sed -i '' "s/./app.js/../app.js/g" $file;
您需要为每个需要替换的路径运行它。