承诺解决不退出

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 上提交它。