【发布时间】:2022-12-12 17:45:37
【问题描述】:
我正在使用 Vue.js 3 Typescript 和 Firebase 开发一个项目。 在尝试实现新的云功能时,我突然遇到了以下问题:
加载资源失败:服务器响应状态为 500()
未处理的承诺拒绝:FirebaseError:内部
我的旧云功能按预期工作,但试图添加一个删除文档的功能突然发生了。我试着分解它,认为这可能是一个语法问题,但即使从另一个工作的云功能中复制整个样板也无济于事。 接下来我开始剥离它的功能。 我发现了两件事:
1.准系统
exports.deleteSingleCourse = functions.region('europe-west1').https.onCall(async (data: any, context: any) => { console.log('teachersRef') return "teachersRef" })输出:{数据:'teachersRef'}
此代码按预期工作,因此调用该函数时没有错误。
2.再多一点
exports.deleteSingleCourse = functions.region('europe-west1').https.onCall(async (data: any, context: any) => { const teachersRef = db.collection(db, 'schools/' + 'y70B7KSbwd2D55SRPItY' + "/teachers"); console.log(teachersRef) return "test" })输出:加载资源失败:服务器响应状态为 500 ()
未处理的承诺拒绝:FirebaseError:内部
此代码不知何故已经完全停止工作并抛出前面提到的错误。 注意:console.log 仅用于使用“teachersRef”变量以阻止 Firebase 取消函数部署。
就在这个问题之前,我不小心在我的 index.ts 中有两个同名的不同云函数并部署了它们。我注意到后更改了名称,将它们从 firebase 控制台中删除并重新部署。我不知道这是否与我的问题有关,但只是想提一下以防万一。
【问题讨论】:
-
您使用的是哪个版本的 Admin SDK?以及如何导入 Admin SDK 模块?
-
我像这样将它导入到 index.ts 中:const admin = require('firebase-admin')。我使用 npm firebase-admin -v 得到的版本是 8.11.0
标签: typescript firebase vue.js