node.js - Angular,Firebase deleteUser()不删除产品中的匿名用户,在开发项目中工作
问题描述
使用 Firebase 功能遇到奇怪的情况。我正在尝试清理匿名用户,并且我使用了下面的代码
// Delete all Anonymous Users
export const cleanupUsers = functions.pubsub.schedule('01 00 * * *')
.timeZone('America/Los_Angeles') // Users can choose timezone - default is America/Los_Angeles
.onRun(async context => {
//Get the list of all Users
const allUsers = await admin.auth().listUsers();
allUsers.users.forEach(async(user) => {
console.log('This USER has been read: ', user.email, user.providerData.length);
if (user.providerData.length === 0) {
console.log('This USER will now be deleted: ', user.email, user.uid);
await admin.auth().deleteUser(user.uid).then(res => {
console.log('This USER has been deleted: ', res);
}).catch(err => console.log('Error on delete of user', err));
}
});
});
奇怪的是它适用于我在 Firebase 中的“开发”项目,但是当我将相同的功能部署到我的产品项目时,它不会删除匿名用户。我没有收到错误,它只是不执行删除用户部分。这是日志的一部分:
1:05:11.793 PM cleanup-cleanupUsers
This USER has been read: undefined 0
1:05:11.793 PM cleanup-cleanupUsers
This USER will now be deleted: undefined b79lTv0ckeR67IlNXSnNEGr0ZfD2
1:05:11.891 PM cleanup-cleanupUsers
Function execution took 1004 ms, finished with status: 'ok'
正如您从日志中看到的那样,它确实读取了匿名用户,它知道 uid,但由于某种原因,仅在 prod 中,它不会删除用户。
关于为什么不删除的任何想法?
解决方案
推荐阅读
- google-sheets-api - 在 Saas 应用程序中使用 Google 表格
- excel - VBA Excel - 从多个工作簿打开并复制到一个摘要表(粘贴在顺序原始文件上)
- apache - 在服务器代码中打印变量
- excel - Excel vba - 摆脱 .activate 和 .select
- c - malloc 结构的元素
- excel - Excel 匹配列中的数据
- wordpress - wordpress(前端)中的 Dashicons 不会显示
- groovy - 如何在 groovy 中排除 servlet-api-2.4
- python - 如何从文本注释中删除数据点?
- php - Yii2 在重定向中获取 url ID。在创建动作中