承诺解决不退出
Promise Resolved Not Exiting
我不确定为什么我的函数在 运行 之后没有退出。解决承诺后代码不会退出执行。
我正在使用 Firebase Admin SDK 发送包含以下内容的消息:
var message = {
data: {
score: '850',
time: '2:45'
},
topic: topic
};
admin.messaging().sendAll([message])
.then((response) => {
// Response is a message ID string.
console.log('Successfully sent message:', response);
})
.catch((error) => {
console.log('Error sending message:', error);
});
打印到控制台后 'Successfully sent message:',代码控制台仍然是 运行 而不是 return。我做错了什么?
此处供参考的是 firebase 消息发送的签名:
send(message: admin.messaging.Message, dryRun?: boolean): Promise<string>;
Firebase Admin SDK 中可能有某些东西阻止进程退出。您可以在完成后强制进程退出,只需将 process.exit(0)
添加到 then
回调的末尾(如果您希望它在那时终止)。
如果您认为此行为是一个错误,您可以在 Firebase Admin SDK GitHub 上提交它。
我不确定为什么我的函数在 运行 之后没有退出。解决承诺后代码不会退出执行。
我正在使用 Firebase Admin SDK 发送包含以下内容的消息:
var message = {
data: {
score: '850',
time: '2:45'
},
topic: topic
};
admin.messaging().sendAll([message])
.then((response) => {
// Response is a message ID string.
console.log('Successfully sent message:', response);
})
.catch((error) => {
console.log('Error sending message:', error);
});
打印到控制台后 'Successfully sent message:',代码控制台仍然是 运行 而不是 return。我做错了什么?
此处供参考的是 firebase 消息发送的签名:
send(message: admin.messaging.Message, dryRun?: boolean): Promise<string>;
Firebase Admin SDK 中可能有某些东西阻止进程退出。您可以在完成后强制进程退出,只需将 process.exit(0)
添加到 then
回调的末尾(如果您希望它在那时终止)。
如果您认为此行为是一个错误,您可以在 Firebase Admin SDK GitHub 上提交它。