Firestore:delete 云功能失败
Firestore:delete cloud function failing
我正在尝试使用云功能从 Flutter 应用程序中删除 Firestore 中的用户。我有一个可调用函数,可以从 firebase.auth 中删除用户,效果很好。
onDelete() 函数按预期触发但随后失败。
import * as functions from "firebase-functions";
const firebase_tools = require('firebase-tools');
exports.deleteUserDocs = functions.auth.user().onDelete((user) => {
const userID = user.uid;
const path = `/users/${userID}`;
console.log(`User ${userID} has requested to delete path ${path}`);
return firebase_tools.firestore
.delete(path, {
project: 764017482510,
recursive: true,
token: functions.config().fb.token,
yes: true,
})
.then(() => {
console.log(`User data with ${userID} was deleted`);
return { "status": "Success" };
})
});
这是我收到的错误消息:
FirebaseError: Deletion failed. Errors: Failed to fetch documents to delete >= 3 times..
at Timeout.<anonymous> (/workspace/node_modules/firebase-tools/lib/firestore/delete.js:272:32)
at listOnTimeout (internal/timers.js:554:17)
at processTimers (internal/timers.js:497:7)
如果我 运行 firebase firestore:delete
从终端使用相同的路径,文档将被毫无问题地删除。
如有任何想法,我们将不胜感激!
你用的项目字段是什么?我相信您应该使用您的 Firebase 项目 ID。
{
project: "firebase_project_id",
recursive: true,
token: functions.config().fb.token,
yes: true,
}
我正在尝试使用云功能从 Flutter 应用程序中删除 Firestore 中的用户。我有一个可调用函数,可以从 firebase.auth 中删除用户,效果很好。
onDelete() 函数按预期触发但随后失败。
import * as functions from "firebase-functions";
const firebase_tools = require('firebase-tools');
exports.deleteUserDocs = functions.auth.user().onDelete((user) => {
const userID = user.uid;
const path = `/users/${userID}`;
console.log(`User ${userID} has requested to delete path ${path}`);
return firebase_tools.firestore
.delete(path, {
project: 764017482510,
recursive: true,
token: functions.config().fb.token,
yes: true,
})
.then(() => {
console.log(`User data with ${userID} was deleted`);
return { "status": "Success" };
})
});
这是我收到的错误消息:
FirebaseError: Deletion failed. Errors: Failed to fetch documents to delete >= 3 times..
at Timeout.<anonymous> (/workspace/node_modules/firebase-tools/lib/firestore/delete.js:272:32)
at listOnTimeout (internal/timers.js:554:17)
at processTimers (internal/timers.js:497:7)
如果我 运行 firebase firestore:delete
从终端使用相同的路径,文档将被毫无问题地删除。
如有任何想法,我们将不胜感激!
你用的项目字段是什么?我相信您应该使用您的 Firebase 项目 ID。
{
project: "firebase_project_id",
recursive: true,
token: functions.config().fb.token,
yes: true,
}