Me gustaría configurar mi aplicación Angular para usar los emuladores de Firebase y seguí esta guía para configurar mi app.module.ts de la siguiente manera:
import { USE_EMULATOR as USE_AUTH_EMULATOR } from '@angular/fire/compat/auth'; import { USE_EMULATOR as USE_DATABASE_EMULATOR } from '@angular/fire/compat/database'; import { USE_EMULATOR as USE_FIRESTORE_EMULATOR } from '@angular/fire/compat/firestore'; @NgModule({ // ... Existing configuration providers: [ // ... Existing Providers { provide: USE_AUTH_EMULATOR, useValue: environment.useEmulators ? ['http://localhost', 9099] : undefined }, { provide: USE_DATABASE_EMULATOR, useValue: environment.useEmulators ? ['http://localhost', 9000] : undefined }, { provide: USE_FIRESTORE_EMULATOR, useValue: environment.useEmulators ? ['http://localhost', 8080] : undefined }, ] }) export class AppModule { } No hay errores después de ejecutar firebase emulators:start así como ng serve . Si trato de iniciar sesión, aparece el siguiente error en Chrome: FirebaseError: Firebase: A network AuthError (such as timeout, interrupted connection or unreachable host) has occurred. (auth/network-request-failed) . También hay una solicitud de red fallida: POST http://localhost/identitytoolkit.googleapis.com/v1/accounts:signUp?key=API_KEY net::ERR_CONNECTION_REFUSED
Si pruebo la misma acción en FireFox, aparece este error: Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost/identitytoolkit.googleapis.com/v1/accounts:signUp?key=API_KEY. (Reason: CORS request did not succeed) junto con los que obtengo en Chrome.
La guía que estaba siguiendo decía usar localhost en lugar de http://localhost , aunque cuando se cargó la página, recibí el error FirebaseError: Firebase: Emulator URL must start with a valid scheme (http:// or https://). (auth/invalid-emulator-scheme) en la consola de DevTools. Estoy usando "@angular/fire": "^7.0.3"
¿Qué puedo hacer para solucionar este problema?
Logré resolver esto degradando a @angular/fire v6