在过去的几天里,由于无法确定的原因,我的Cloud Functions一直失败。提取文档的基本查询未返回任何内容。
我已经阅读了文档,并且由于这是一个简单的查询,因此我不确定它可能在哪里失败。我已经对文档参考号进行了硬编码,并且确定该文档存在。
我只面临Cloud Functions的这个问题。我能够查询表格并从正在构建的Flutter应用中返回文档。
exports.sendEventInvites = functions.https.onCall((data, context) => {
return sendEventInvites.send(data, context).then((result) => {
return result;
}).catch((error) => {
console.log(error);
return {
status: 500,
message: 'Failed to create event document',
}
});
});
function send(event, context) {
let db = admin.firestore();
return new Promise(resolve => {
db.collection(`users`).doc('hardcoded-value').get().then(doc => {
if (!doc.exists) {
console.log("Failed to fetch organizer document. Invites not sent");
return resolve({
status: 501,
message: "Failed to send invites"
});
}
// a bunch of code here that never gets executed because doc.exists is false
}).catch(error => {
console.log(error);
return resolve({
status: 503,
message: "Failed to send invites"
});
});
});
}
我没有任何错误,只是没有文档。我已经尝试从文档中以两种方式初始化admin:
admin.initializeApp({credential: admin.credential.cert(require('./secret-doc')), databaseURL: "db-url"});
和
admin.initializeApp(functions.config().firebase);
我正在使用以下相关的npm模块:
"@google-cloud/firestore": "^2.2.4"
"firebase-admin": "^8.2.0"
"firebase-functions": "^3.1.0"
"firebase-tools": "^7.1.0"