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

Hybridauth 3无法返回given_name与family_name字段问题求助

解决Hybridauth 3无法获取Google用户name、given_name和family_name字段的问题

问题核心原因

Google OAuth 2.0 API默认不会返回name、given_name、family_name这类个人信息字段,必须在授权请求中明确添加对应的scope权限。你的代码逻辑本身没问题,但如果授权阶段没申请对应权限,Google接口就不会返回这些字段。

具体解决方案

  1. 补充授权Scope
    在Hybridauth的Google配置项里,确保添加profile scope(该权限包含姓名相关字段),完整的scope配置至少需要:
'scope' => 'email profile openid',

其中openid是OpenID Connect协议必需项,email用于获取邮箱,profile用于获取姓名、头像等基础个人信息。

  1. 验证API返回内容
    可以先打印接口返回的原始数据,确认Google是否返回了目标字段:
var_dump($response);
exit;

如果返回结果里确实没有name、given_name、family_name,说明肯定是scope配置遗漏。

  1. 避免修改核心代码
    你提供的Provider\Google.php代码本身是正确的字段映射逻辑,无需修改。问题完全出在授权阶段的权限申请环节,不要随意改动Hybridauth的核心Provider文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 20:20:05