Почему я получаю ошибку 404 и что не означает приложение Firebase '[DEFAULT]'? - PullRequest
0 голосов
/ 22 февраля 2020

Что именно это означает и как мне это решить?

Failed to load resource: the server responded with a status of 404 ()
firebaseNamespaceCore.ts:106 Uncaught FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase
App.initializeApp() (app/no-app).
     at f (https://www.gstatic.com/firebasejs/7.9.1/firebase.js:1:73499)
     at Object.i [as auth] (https://www.gstatic.com/firebasejs/7.9.1/firebase.js:1:73757)
     at https://superx-bcf15.web.app/:37:22

1 Ответ

0 голосов
/ 22 февраля 2020

Предоставленные вами сообщения об ошибках фактически являются двумя отдельными ошибками.

Ошибка 404

Первое сообщение об ошибке

Failed to load resource: the server responded with a status of 404 ()

вызвано

<script src="js/app.js"></script>

, где файл https://superx-bcf15.web.app/js/app.js не существует.

Приложение Firebase '[DEFAULT]'

firebaseNamespaceCore.ts:106 Uncaught FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call FirebaseApp.initializeApp() (app/no-app).

Это сообщение об ошибке означает, что вы не звонили firebase.initializeApp() для передачи необходимых параметров конфигурации перед попыткой использования SDK в другом месте.

В своем коде вы пытаетесь вызвать firebase.auth() перед вызовом firebase.initializeApp() здесь:

<script src="https://www.gstatic.com/firebasejs/7.9.1/firebase.js"></script>
<script>
    firebase.auth().onAuthStateChanged(function(user){
        if(user){
            window.location.href = "admin.html";
        }
    });
</script>

Вам нужно изменить это значение на

<script src="https://www.gstatic.com/firebasejs/7.9.1/firebase.js"></script>
<script>
    firebase.initializeApp(/* your firebase config here */);
    firebase.auth().onAuthStateChanged(function(user){
        if(user){
            window.location.href = "admin.html";
        }
    });
</script>

Эти шаги хорошо документированы в документации Getting Started .

Поскольку вы используете Firebase Hosting, вы также можете использовать встроенный вспомогательный скрипт для вызова initializeApp() с конфигурацией, необходимой для вашего проекта автоматически (как вы можете см. здесь ):

<script src="https://www.gstatic.com/firebasejs/7.9.1/firebase.js"></script>
<script src="/__/firebase/init.js"></script>
<script>
    firebase.auth().onAuthStateChanged(function(user){
        if(user){
            window.location.href = "admin.html";
        }
    });
</script>
...