Firebase Admin Nodejs 找不到模块 service_account.json
Posted
技术标签:
【中文标题】Firebase Admin Nodejs 找不到模块 service_account.json【英文标题】:Firebase Admin Nodejs cannot find module service_account.json 【发布时间】:2017-08-27 05:27:15 【问题描述】:我从“node firebasedb.js”开始我的节点。我的 firebasedb.js 包含以下代码:
var admin = require("firebase-admin");
var serviceAccount = require("service_account.json");
// Initialize Firebase
var config =
credential: admin.credential.cert(serviceAccount),
apiKey: "<api key>",
authDomain: "<auth domain>",
databaseURL: "<database url>",
storageBucket: "<storage bucket>",
;
admin.initializeApp(config);
当我运行 node 时,我在 .json 文件所在的目录中。 但它说
Error: Cannot find module 'service_account.json'
【问题讨论】:
【参考方案1】:您缺少所需路径的相对部分。也就是说,你应该这样做:
var serviceAccount = require("./service_account.json");
如果不是相对路径,require
将在 node_modules
中查找名为 service_account.json
的模块。
【讨论】:
【参考方案2】:问题在于 TypeScript 编译器不知道 json
文件。您可以通过将以下声明添加到您的类型文件中来告诉编译器。
declare module "*.json"
const value: any;
export default value;
然后您可以使用以下命令导入 json:
import * as serviceAccount from './service-key.json';
如果您还没有打字文件设置,则需要创建一个,然后通过将其添加到include
或files
来告诉tsconfig.json
:
"include": [
"./index.d.ts"
],
【讨论】:
谢谢!您能否提供有关类型文件的更多信息? 打字文件在哪里?哪个?以上是关于Firebase Admin Nodejs 找不到模块 service_account.json的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Firebase-admin 为 NodeJs 设置 timestampsInSnapshots 设置?
Typeorm + Firebase 功能:部署后“在任何 orm 配置文件中都找不到连接选项”