Вход с помощью кнопок Google Ничего не делает; Ошибка исходной карты?

#javascript #reactjs #authentication #react-hooks

Вопрос:

Я следил за этим (https://dev.to/sivaneshs/add-google-login-to-your-react-apps-in-10-mins-4del) учебное пособие по настройке аутентификации пользователей с помощью Firebase в моем веб-приложении React. Я не получаю ошибок компиляции, но всякий раз, когда я запускаю приложение, нет….. входа в систему с помощью Google. В консоли говорится, что Devtools не удалось загрузить исходную карту, и указывается ошибка 404. Вот мой компонент входа в систему:

 import React from 'react';
import { GoogleLogin } from 'react-google-login';
// refresh token
import { refreshTokenSetup } from './refreshToken';

const clientID = '562063530636-256jp0tnir18v5b2jukebg144au005gi.apps.googleusercontent.com';

function Login() {

  const onSuccess = (res) => {
    console.log('[Login Success] currentUser:', res.profileObj);
    alert(
     `Logged in successfully welcome ${res.profileObj.name}. n See console for full profile object.`
   );
    refreshTokenSetup(res);
  };

  const onFailure = (res) => {
    console.log("[Login Failed] res:", res);
  };

  return (
    <div>
      <GoogleLogin
      clientID = {clientID}
      buttonText = "Login"
      onSuccess = {onSuccess}
      onFailure = {onFailure}
      cookiePolicy = {'single-host-origin'}
      style = {{marginTop: '100px'}}
      isSignedIn = {true}></GoogleLogin>
    </div>
  );
}

export default Login;

 

И мой компонент токена обновления:

 export const refreshTokenSetup = (res) => {
  // Timing to renew access token
  let refreshTiming = (res.tokenObj.expires_in || 3600 - 5 * 60) * 1000;

  const refreshToken = async () => {
    const newAuthRes = await res.reloadAuthResponse();
    refreshTiming = (newAuthRes.expires_in || 3600 - 5 * 60) * 1000;
    console.log('newAuthRes:', newAuthRes);
    // saveUserToken(newAuthRes.access_token);  <-- save new token
    localStorage.setItem('authToken', newAuthRes.id_token);

    // Setup the other timer after the first one
    setTimeout(refreshToken, refreshTiming);
  };

  // Setup first refresh timer
  setTimeout(refreshToken, refreshTiming);
};

 

И мой App.js:

 import logo from './logo.svg';
import './App.css';
import withFirebaseAuth from 'react-with-firebase-auth'
import firebase from 'firebase/compat/app';
import 'firebase/compat/auth';
import Login from "./Login.js";
import Logout from "./Logout.js";


import firebaseConfig from './firebaseConfig';

import "firebase/compat/app";
import "firebase/compat/analytics";

import { initializeApp } from 'firebase/compat/app';
import { getAuth } from "firebase/compat/auth";

const firebaseApp = firebase.initializeApp(firebaseConfig);

const firebaseAppAuth = firebaseApp.auth();
const providers = {
  googleProvider: new firebase.auth.GoogleAuthProvider(),
};

const {
  user,
  signOut,
  signInWithGoogle,
} = () => this.props;

function App() {
  return (
    <div className="App">
      <Login />
      <br />
      <Logout />
      <br />

    </div>
  );
}

export default withFirebaseAuth({
  providers,
  firebaseAppAuth,
})(App);

 

Кто-нибудь может помочь? Я попытался переделать идентификатор клиента и прибегнуть к некоторым импортам, но я действительно не знаю, что не так.