error - nodejs firebase error

doohyunlm·2021년 8월 27일
1

error

목록 보기
3/4
post-thumbnail

목차


  1. 오류 원인
  2. 해결 방법
  3. 마치며
  • nodejs에서 firebase를 이용해 푸쉬메시지를 발송할 때 발생하는 에러입니다.




1. 오류 원인


Error: The default Firebase app already exists. 
This means you called initializeApp() more than once without providing an app name as the second argument. 
In most cases you only need to call initializeApp() once. 
But if you do want to initialize multiple apps, pass a second argument to initializeApp() to give each app a unique name.

  • 위 에러 메시지를 보면 initializeApp()이 여러번 호출되여 발생하는 에러입니다.

  • 해당 코드를 보시면 이런식으로 되어 있을겁니다.


const admin = require("firebase-admin");

const serviceAccount = require("../config/serviceAccount.json");
const databaseURL = "databaseURL";

admin.initializeApp({
    credential: admin.credential.cert(serviceAccount),
    databaseURL: databaseURL,
});

  • nodejs 코드내에서 2번 호출되는 부분이 생겨 문제가 발생합니다.



2. 해결 방법


const admin = require("firebase-admin");

const serviceAccount = require("../config/serviceAccount.json");
const databaseURL = "databaseURL";

if (!admin.apps.length) {
    var firebaseAdmin = admin.initializeApp({
        credential: admin.credential.cert(serviceAccount),
        databaseURL: databaseURL,
    });
}

  • 위의 코드처럼 있을시에는 저 로직을 안타게끔 설정해주시면 정상적으로 해결이 됩니다.



3. 마치며


  • 다른 분들은 이러한 에러 없이 잘 해결했으면 하는 바람에 작성하였습니다.
profile
백엔드 개발자

0개의 댓글