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

使用Firebase Web SDK实现Apple登录时displayName返回null的问题求助

Firebase Web SDK实现Apple登录时displayName返回null的问题求助

各位开发者大佬,我最近在做Firebase Web SDK集成Apple登录的功能,其他流程都走通了,但唯独user.displayName一直返回null,试了各种方法都没解决,来这儿求支招!

先贴一下我用到的核心代码片段:

var provider = new firebase.auth.OAuthProvider('apple.com');

provider.addScope('email');
provider.addScope('name');

firebase.auth()
.signInWithPopup(provider)
.then((result) => {
  console.log(result.user); // 这里打印出来的user.displayName始终是null
});

我清楚Apple的授权机制:只有用户第一次授权登录该应用时才会返回姓名信息,后续登录就不会再返回。为此我特意去Apple的安全设置里取消了该应用的关联,重新测试后问题依然存在。

这里有个关键线索:我查了浏览器的网络日志,发现Google那边已经正确把firstName、lastName和displayName返回给我的Web应用了,说明问题根本不在Apple或者Google那边,而是Firebase Web SDK没有把这些信息传递到我的代码里。

我几乎把能搜的内容都翻遍了,除了换用其他第三方库之外,完全找不到解决办法。想问问有没有大佬也遇到过这个问题,并且找到了解决方案?

补充几个细节:

  • 我用同样的Firebase Web SDK已经成功集成过Google登录功能,全程没有任何问题
  • 我当前使用的是Firebase compat兼容库v10.7.2

备注:内容来源于stack exchange,提问作者Claudio C.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.20 09:40:25