посмотрите на этот код, брат, я использую его в моих функциях firebase, код лежит в index.ts
import * as admin from 'firebase-admin';
const serviceAccount = require('../common/serviceAccountKey.json');
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "https://<project-id>.firebaseio.com",
storageBucket: "<project-id>.appspot.com"
});
ниже моя структура каталогов
functions
├── common
| └── serviceAccountKey.json
└── src
└── index.ts
надеюсь, это поможет. спросите, если у вас возникли проблемы;)
[ОБНОВЛЕНИЕ]
проблем с вашим firebase.json
нет. на самом деле он ищет нужную папку. положить пакет. json в правильное место, где он хранится неправильно. он должен храниться вне папки сервера. где находится папка sr c, поэтому это должна быть обновленная структура каталогов:
myProjectFolder
├──server
| ├── common
| | └── serviceAccountKey.json
| ├── src
| | └── index.ts
| └──package.json, tsconfig.json and other files
└── firebase.json
обновите структуру папок до этой и git команду firebase deploy --only functions
из myProjectFolder
пакет. json для windows [РЕДАКТИРОВАТЬ]
{
"functions": {
"predeploy": [
"npm --prefix \"%RESOURCE_DIR%\" run lint", // observe here $RESOURCE_DIR has been replaced with %RESOURCE_DIR%
"npm --prefix \"%RESOURCE_DIR%\" run build" // same change as above
],
"source": "server"
},
"hosting": {
"public": "web",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [ ]
}
}
попробуйте это и прокомментируйте