You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行npm run serve时Firebase函数加载失败:缺少private_key属性

解决Firebase Functions本地启动报错:Service account object must contain a string "private_key" property

问题原因

你用admin.credential.applicationDefault()初始化Admin SDK时,本地开发环境无法自动获取合法的服务账号密钥。这个方法在GCP生产环境会自动生效,但本地需要手动配置密钥文件。

解决步骤

  • 下载服务账号密钥
    打开Firebase控制台,进入「项目设置」→「服务账号」,点击「生成新的私钥」,下载JSON格式的密钥文件,存到项目里(别把这个文件提交到版本控制系统)。

  • 配置环境变量(推荐方式)
    根据你的操作系统设置环境变量,指定密钥文件路径:

    • Windows(CMD):set GOOGLE_APPLICATION_CREDENTIALS="你的密钥文件绝对路径"
    • Windows(PowerShell):$env:GOOGLE_APPLICATION_CREDENTIALS="你的密钥文件绝对路径"
    • macOS/Linux:export GOOGLE_APPLICATION_CREDENTIALS="你的密钥文件绝对路径"
  • 或者直接在代码中指定密钥(本地测试用)
    修改初始化代码,直接引入下载的密钥文件:

    const admin = require('firebase-admin');
    const serviceAccount = require('./你的密钥文件相对路径.json');
    
    admin.initializeApp({
      credential: admin.credential.cert(serviceAccount)
    });
    
  • 重启服务
    关掉当前的npm run serve进程,重新执行命令,验证错误是否解决。

内容的提问来源于stack exchange,提问作者ryan tanosa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 07:24:22