Firebase云函数版本2?

bfnvny8b  于 2023-03-19  发布在  其他
关注(0)|答案(1)|浏览(82)

我对Firebase Cloud Functions的版本划分感到困惑。在我的网络控制台中,我的Firebase Cloud Functions Jmeter 板显示我的所有函数都是版本1。我读到版本2只适用于通过GCP的云函数,而不是Firebase。然而,在Firebase dox中,当研究运行时选项配置(即启用触发函数重试或扩展超时窗口)时,我看到了以下内容:
要在函数源代码中设置内存分配和超时,请使用Firebase SDK for Cloud Functions 2.0.0中引入的runWith参数。
https://firebase.google.com/docs/functions/manage-functions#set_timeout_and_memory_allocation
这说明Firebase Cloud Functions可以选择v2。如果可以,我如何将我的函数升级到v2?如果不能,我的v1函数是否可以使用以下运行时选项?

exports.assignAdminPrivileges = functions.runWith({
    failurePolicy: true,
}).firestore.document("admins/{doc}").onCreate(async (snapshot, _context) => {
    const doc = snapshot.data();
    const email = doc.private.email;

    return admin.auth().getUserByEmail(email).then((user) => {
        return admin.auth().setCustomUserClaims(user.uid, {"admin": true});
    });
});
vyswwuz2

vyswwuz21#

将此作为社区wiki发布以帮助其他社区成员。
正如@Frank所说,已经有了如何按照documentation将第一代功能升级到第二代功能的说明/指南。
Firebase的云函数(第二代)仍处于测试阶段,但现在可公开预览。使用第二代时仍有限制,包括使用Firestore触发器,这是你现在使用的。你可以选择v2(第二代),但如前所述,仍然有限制,你可以如何使用它。有关限制的更多信息,你可能想访问此文档。

相关问题