Firebase Auth 에뮬레이터의 간헐적 'auth/emulator-config-failed' 오류 해결하기 | 세상의 모든 정보

Firebase Auth 에뮬레이터의 간헐적 'auth/emulator-config-failed' 오류 해결하기

Firebase Auth 에뮬레이터의 간헐적 'auth/emulator-config-failed' 오류 해결하기

Firebase Auth 에뮬레이터를 사용할 때 간헐적으로 'auth/emulator-config-failed' 오류가 발생하는 경우가 있습니다. 이 글에서는 이 문제의 원인과 해결 방법을 상세히 알아보겠습니다.

1. 문제 상황

Firebase Auth 에뮬레이터를 연결할 때 다음과 같은 오류가 간헐적으로 발생합니다:


Uncaught FirebaseError: Firebase: Error (auth/emulator-config-failed).
        

2. 주요 원인

  • 에뮬레이터 연결 시점 문제
  • 네트워크 요청 타이밍 이슈
  • React.StrictMode로 인한 중복 초기화
  • localhost 대신 IP 주소 사용 필요

3. 해결 방법

3.1 localhost 대신 IP 주소 사용

에뮬레이터 연결 시 'localhost' 대신 '127.0.0.1'을 사용합니다:


connectAuthEmulator(auth, 'http://127.0.0.1:9099', { disableWarnings: true });
        

3.2 에뮬레이터 연결 시점 조정

Firebase 초기화 직후에 동기적으로 에뮬레이터를 연결합니다:


const app = initializeApp(config);
const auth = getAuth(app);
if (process.env.NODE_ENV === 'development') {
  connectAuthEmulator(auth, 'http://127.0.0.1:9099', { disableWarnings: true });
}
        

3.3 React.StrictMode 비활성화 고려

개발 중 문제가 지속될 경우 일시적으로 React.StrictMode를 비활성화해 봅니다.

3.4 에뮬레이터 연결 상태 확인

이미 에뮬레이터에 연결되어 있는지 확인 후 연결을 시도합니다:


if (!auth.config.emulator) {
  connectAuthEmulator(auth, 'http://127.0.0.1:9099', { disableWarnings: true });
}
        

4. 추가 팁

  • Firebase 설정을 앱 생명주기 초기에 수행합니다.
  • 에뮬레이터 연결 전에 네트워크 요청이 발생하지 않도록 주의합니다.
  • React 사용 시, useEffect 훅 내에서 에뮬레이터 연결을 수행합니다.

결론

Firebase Auth 에뮬레이터의 'auth/emulator-config-failed' 오류는 주로 연결 시점과 네트워크 요청 타이밍 문제로 발생합니다. IP 주소 사용, 적절한 연결 시점 선택, 그리고 React.StrictMode 고려 등의 방법으로 대부분의 경우 해결할 수 있습니다. 문제가 지속될 경우, Firebase 설정 전반을 검토하고 필요한 경우 Firebase 지원 팀에 문의하는 것이 좋습니다.

이 가이드가 Firebase Auth 에뮬레이터 사용 시 발생하는 문제를 해결하는 데 도움이 되었기를 바랍니다. 추가 질문이나 의견이 있으시면 언제든 댓글로 남겨주세요.

다음 이전

POST ADS1

POST ADS 2