加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – Laravel Socialite 2.0 Facebook身份验证只返回id和名称

发布时间:2020-12-14 19:44:21 所属栏目:大数据 来源:网络整理
导读:我正在使用Laravel的Socialite包(版本2.0.0).它对谷歌和 github很有用但是当我尝试用facebook登录时,我得到了这个: ErrorException in FacebookProvider.php line 89:Undefined index: first_name 在FacebookProvider.php中,错误来自此方法: protected fun
我正在使用Laravel的Socialite包(版本2.0.0).它对谷歌和 github很有用但是当我尝试用facebook登录时,我得到了这个:

ErrorException in FacebookProvider.php line 89:
Undefined index: first_name

在FacebookProvider.php中,错误来自此方法:

protected function mapUserToObject(array $user)
{
    return (new User)->setRaw($user)->map([
        'id' => $user['id'],'nickname' => null,'name' => $user['first_name'].' '.$user['last_name'],'email' => isset($user['email']) ? $user['email'] : null,'avatar' => $this->graphUrl.'/'.$this->version.'/'.$user['id'].'/picture?type=normal',]);
}

如果我在这个映射之前dd()$user param.我只获得身份验证和经过身份验证的Facebook用户的名称.所以,这意味着我没有收到Facebook用户的电子邮件.我至少需要用户的姓名和电子邮件.

在dd()之后,此方法如下所示:

protected function mapUserToObject(array $user)
{
    dd($user);
    return (new User)->setRaw($user)->map([
        'id' => $user['id'],]);
}

可能是什么问题呢?请帮我.

解决方法

我有同样的问题,是一个错误!使用新版本的文件FacebookProvider.php here并工作!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读