You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JavaScript中仅获取Firebase Google登录返回的additionalUserInfo

获取Firebase Google Auth登录结果中的additionalUserInfo

嘿,这事儿超简单的!你已经拿到登录成功后的result对象了,additionalUserInfo就直接挂在这个对象上,不用绕弯子,直接提取出来就行。

咱们直接修改你现有的代码,看看怎么单独获取它:

function googleSignin() {
  const base_proveider = new firebase.auth.GoogleAuthProvider();
  firebase.auth().signInWithPopup(base_proveider)
    .then(function(result){
      // 直接从result中提取additionalUserInfo
      const additionalUserInfo = result.additionalUserInfo;
      console.log("获取到的additionalUserInfo:", additionalUserInfo);
      
      // 如果你想单独取里面的字段也很方便,比如:
      // 判断是不是新注册的用户
      console.log("是否为新用户:", additionalUserInfo.isNewUser);
      // 获取谷歌用户的个人资料(昵称、头像等)
      console.log("用户资料:", additionalUserInfo.profile);
      
      console.log("success google account linked")
    })
    .catch(function(err){
      console.log(err)
      console.log('failed to do')
    })
}

这里给你拆解下additionalUserInfo里常用的几个字段:

  • isNewUser:布尔值,用来判断这个用户是不是第一次通过谷歌账号登录你的应用
  • profile:一个对象,包含了谷歌用户的公开信息,比如displayName(昵称)、photoURL(头像链接)、email(邮箱)这些
  • username:部分第三方登录会返回这个字段,谷歌登录一般不会返回,不过如果有需要也可以留意下

这样你就能精准拿到你想要的additionalUserInfo内容啦~

内容的提问来源于stack exchange,提问作者Muzammil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 16:37:50