当前位置: 首页 > 知识库问答 >
问题:

为什么我找不到facebook的性别?[Laravel 5.1社交名媛]

华凯捷
2023-03-14

我刚和Laravel社交名媛做了一个auth控制器。第一次我只检索姓名和电子邮件数据,然后我试图检索性别,但它出现了一个错误,上面写着

public function redirectToProvider()
{
    return Socialite::driver('facebook')->redirect();
}


public function handleProviderCallback()
{
    try {
        $user = Socialite::driver('facebook')->user();
    } catch (Exception $e) {
        return Redirect::to('login/facebook');
    }

    $authUser = $this->findOrCreateUser($user);

    Auth::login($authUser, true);

    return Redirect::to('home');
}


private function findOrCreateUser($fbUser)
{
    if ($authUser = User::where('email', $fbUser->email)->first()) {
        return $authUser;
    }
    $role = "member";
    return User::create([
        'firstname' => $fbUser->name,
        'email' => $fbUser->email,
        'gender' => $fbUser->gender,
        'role' => $role
    ]);
} 

在这里,我提供了如果使用dd($user);方法所得到的结果:

User {# ▼
  +token: "tokken value"
  +id: "id value"
  +nickname: null
  +name: "name value"
  +email: "email value"
  +avatar: "avatar value"
  +"user": array:value [▶]
  +"avatar_original": "avatar_original value"
}

共有1个答案

端木皓君
2023-03-14
'gender' => $fbUser->user['gender'],

因为性别出现在user[]数组中...所以你可以用这种方式访问它。

但请记住,你需要得到Facebook的许可,你的应用程序才能检索这个值。

 类似资料:
  • 问题内容: 我正在尝试打开一个保存在源文件夹本身中的CSV文件名“ logger.csv”。 但是,这一直在给我一个“找不到文件”错误。 问题答案: 如果您现在就使用相对路径,则该文件需要存在于项目根目录中, 而不是 存在于java文件的目录中。 考虑以下层次结构: 不管用。 将 现在 的工作。(注意,该文件与src目录相邻。)

  • 我试图找到这个按钮并点击它。但我得到了这个错误: 我注意到它正在寻找不同的字符串bc它在类名前面添加了这个点。这是问题吗? 非常感谢。

  • 问题内容: 我在asp.net项目的Content文件夹中有一个json文件: …以及访问它的代码: …但是调用代码时什么也没发生;浏览器控制台说:“无法加载资源:服务器响应状态为404(未找到)” 为什么找不到?“波浪号文件名”不是通往文件的正确路径吗? 更新 我还尝试了向后“重击”: …并且得到相同的结果(“ 无法加载资源:服务器以404(未找到)状态进行响应 ”) 更新2 然后,我尝试了这种

  • 我用RESTAPI创建了一个非常基本的Spring Boot项目。我尝试将它连接到我的Angular应用程序,但它出现了一些CORS安全错误,所以我切换到了Postman。我试图用邮递员测试它,但我一直收到一个404未找到邮递员错误。为什么我不能连接到我的后端并发布到测试仪功能? 控制器 主要的 安慰 等效的 cURL 命令 邮递员

  • 我有一个 xUnit.net 测试,如下所示: VS 2012的xUnit插件表示: 未找到要运行的测试。 TestDriven.net运行良好,但提到了一些关于特设: 1通过,0失败,0跳过(请参阅“任务列表”),这花费了0.47秒(临时) TeamCity、和和Visual Studio也找不到 (我已经安装了,VS看到了一些测试。) 什么原因?

  • 我有一些测试使用内置的,但无法让它们运行。 我使用视觉工作室2012最终。 我有两个项目的解决方案;一个是使用微软的测试。VisualStudio。测试工具。单元测试,在类前,在测试方法前,并参考Microsoft。VisualStudio。质量工具。UnitTestFramework(版本10.0.0.0,运行时版本v2.0.50727)。我曾尝试过dot net framework 3.5、4