【问题标题】:Firebase Admin Nodejs cannot find module service_account.jsonFirebase Admin Nodejs 找不到模块 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'

【问题讨论】:

    标签: node.js firebase service firebase-admin


    【解决方案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';
      

      如果您还没有打字文件设置,则需要创建一个,然后通过将其添加到includefiles 来告诉tsconfig.json

        "include": [
          "./index.d.ts"
        ],
      

      【讨论】:

      • 谢谢!您能否提供有关类型文件的更多信息?
      • 打字文件在哪里?哪个?
      猜你喜欢
      • 2018-05-16
      • 2018-03-31
      • 2020-03-09
      • 2018-03-31
      • 2017-06-29
      • 2018-02-25
      • 1970-01-01
      • 2017-12-16
      • 2014-01-29
      相关资源
      最近更新 更多