Firebase 无法在本地运行云功能
一个月后,我回到了我的开发环境,运行了Firebase 无法在本地运行云功能,firebase,google-cloud-functions,firebase-admin,Firebase,Google Cloud Functions,Firebase Admin,一个月后,我回到了我的开发环境,运行了firebase-service——仅函数。它给了我一些信息,我应该更新我的软件包。我只是按照指示,在开发机器上本地运行云函数被破坏了:(我从头开始重新启动所有程序,并将所有依赖项更新为最新版本。不幸的是,我遇到了一些身份验证问题,我没有任何运气:( 我得到了这个错误: Error: Could not load the default credentials. Browse to https://cloud.google.com/docs/authenti
firebase-service——仅函数
。它给了我一些信息,我应该更新我的软件包。我只是按照指示,在开发机器上本地运行云函数被破坏了:(我从头开始重新启动所有程序,并将所有依赖项更新为最新版本。不幸的是,我遇到了一些身份验证问题,我没有任何运气:(
我得到了这个错误:
Error: Could not load the default credentials. Browse to https://cloud.google.com/docs/authentication/getting-started for more information.
packages.json
:
{
"name": "functions",
"scripts": {
"lint": "tslint --project tsconfig.json",
"build": "tsc",
"serve": "npm run build && firebase serve --only functions",
"shell": "npm run build && firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
},
"engines": {
"node": "8"
},
"main": "lib/index.js",
"dependencies": {
"firebase-admin": "^8.2.0",
"firebase-functions": "^3.0.2",
"firebase-tools": "^7.0.2",
"google-gax": "^1.1.3"
},
"devDependencies": {
"tslint": "^5.12.0",
"typescript": "^3.2.2"
},
"private": true
}
我已将我的评论添加到,以防有人遇到类似问题。 对我来说,将使用
config()
初始化firebase管理员切换为手动传递服务帐户凭据解决了身份验证问题
在获取最新更新后无法工作
admin.initializeApp(functions.config().firebase);
工作解决方案
var admin = require("firebase-admin");
var serviceAccount = require("firebase-adminsdk.json");
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "https://<project>.firebaseio.com"
});
var admin=require(“firebase admin”);
var servicecomport=require(“firebase adminsdk.json”);
admin.initializeApp({
凭证:管理员凭证证书(serviceAccount),
数据库URL:“https://.firebaseio.com"
});
您对一个似乎完全不同的问题发表了评论。我看不出您在此处显示的错误消息与最初报告的错误消息有何关联。我是在删除了链接问题中提到的application\u default\u credentials.json文件后遇到上述问题的。早些时候,我在Gi中报告了无效的授予问题tHub问题。当您使用--debug运行命令时,相关的输出是什么?这里有一个链接,指向打开--debug标志的输出:我在那里没有看到任何错误。您到底是如何看到问题的?我觉得这里缺少一些信息。您如何准确地再现此问题?更常见的情况是在没有pa的情况下初始化参数,除非您需要使用不是应用程序默认服务帐户的特定服务帐户。您可以在示例代码和文档中看到它,当前环境将提供合理的默认值:admin.initializeApp()
@DougStevenson:我完全同意!我确保我的默认项目被相应地设置为由firebaseConfig拾取。我仍然不确定为什么它在拾取默认配置时遇到问题,除非我手动执行此操作。@DougStevenson非常感谢您调试此问题。节省了我的另一天:)