Не получаю никаких результатов от firebase с помощью `signInWithRedirect()` и `getRedirectResult()`

# #reactjs #firebase #firebase-authentication

Вопрос:

Пытаюсь настроить аутентификацию пользователя с помощью firebase для моего проекта react, и я не получаю никаких результатов с помощью signInWithRedirect() and getRedirectResult() .

Таким образом, в основном при нажатии кнопки я перенаправляюсь на сайт аутентификации Google, но затем, после того как я возвращаюсь на свою домашнюю страницу, я не получаю никаких данных, но в меню аутентификации firebase я вижу, что добавлен новый пользователь. И когда я использую signInWithPopup() , все работает нормально, и я получаю пользовательские данные так, как хочу, но поскольку это приложение в основном предназначено для мобильных пользователей, мне нужно его использовать signInWithRedirect() . Пожалуйста, кто-нибудь может помочь?

 //Exported from another component
    export const app = initializeApp(firebaseConfig);
    export const provider = new GoogleAuthProvider();

//Sign in
     const signInWithGoogle = () => {
    signInWithRedirect(auth, provider);
  };
 

и в других потоках я видел, что вы должны получать данные при начальной загрузке страницы, поэтому я думал, что использование useEffect решит мою проблему, но это не так

 //Get results
    useEffect(() => {
        getRedirectResult(auth, provider)
          .then((result) => {
            // This gives you a Google Access Token. You can use it to access Google APIs.
            const credential = GoogleAuthProvider.credentialFromResult(result);
            const token = credential.accessToken;
    
            // The signed-in user info.
            const user = result.user;
            console.log(user);
          })
          .catch((error) => {
            // Handle Errors here.
            const errorCode = error.code;
            const errorMessage = error.message;
            // The email of the user's account used.
            const email = error.email;
            // The AuthCredential type that was used.
            const credential = GoogleAuthProvider.credentialFromError(error);
            // ...
          });

  }, []);