带有令牌的firebase google身份验证

Posted

技术标签:

【中文标题】带有令牌的firebase google身份验证【英文标题】:firebase google authentication with token 【发布时间】:2021-10-30 09:16:24 【问题描述】:

我是 reactjs 世界的新手 我正在开发一个需要 reactjs 和 firebase 连接的小项目 我正在研究firebase google身份验证,我已经实现了一小部分,如下所示,

LoginPage.js

import  auth,provider  from '../firebase'

const loginMethod=()=>
        auth.signInWithPopup(provider).then((result)=>
            dispatch(
                setVariableInfo(
                    var1:result.user.displayName,
                    var2:result.user.email,
                    var3:result.user.photoURL
                )
            )
        )
    

使用上面的代码,当我点击浏览器的 url 时,我可以看到一个弹出窗口,我可以成功地使用 google 帐户进行身份验证。但是当我尝试刷新 url 时,它再次弹出并要求我使用谷歌帐户进行身份验证。

如何实现与 youtube 或 gmail 实现的相同的功能?我们如何使用令牌对用户进行身份验证??

请帮忙,在此先感谢

【问题讨论】:

【参考方案1】:

页面刷新请检查用户是否登录

import  getAuth, onAuthStateChanged  from "firebase/auth";

const auth = getAuth();
onAuthStateChanged(auth, (user) => 
  if (user) 
    // User is signed in, 
    const uid = user.uid;
    // ...
   else 
    // User is signed out
    // ...
  
);

【讨论】:

以上是关于带有令牌的firebase google身份验证的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 Firebase Google 身份验证获取带有刷新令牌的 YouTube 数据 API 访问令牌?

使用 Firebase 身份验证进行身份验证后检索 Google 访问令牌

将 Google 身份验证令牌与 Firebase 一起使用

为啥在通过 Firebase 身份验证传递 id 令牌时,此 CORS 身份验证的 Google Cloud 函数会返回 403?

Firebase Android 身份验证失败:expired_token(身份验证令牌已过期)

Firebase 令牌身份验证错误