使用socialite laravel检索facebook用户详细信息

Sha*_*hah 2 php facebook facebook-graph-api laravel laravel-socialite

我正在使用laravel版本5.4.36,我使用Laravel Sociallite插件将用户连接到facebook.

现在我想要登录用户信息,如出生日期性别,地址,手机号码或此官方文档中给出的任何权限.

我试过以下代码

     $facebookScope = [
        'user_birthday',
        'user_location',
    ];
    $facebookFields = [
        'name', // Default
        'email', // Default
        'gender', // Default
        'birthday', // I've given permission
        'location', // I've given permission
    ];
    return Socialite::driver('facebook')->fields($facebookFields)->scopes($facebookScope)->redirect();
Run Code Online (Sandbox Code Playgroud)

现在,当我点击登录与Facebook按钮时,它显示错误

无效的范围:user_birthday,user_location.此消息仅向开发人员显示.如果存在,您应用的用户将忽略这些权限.请阅读以下文档获取有效权限:https://developers.facebook.com/docs/facebook-login/permissions

我尝试了不同的范围,如字段名称=年龄和范围= user_age_range字段名称=生日和范围名称= user_birthday为字段名称=朋友和字段名称= user_friends

对于我使用的每个范围我得到无效范围的错误. 在此输入图像描述

难道我做错了什么 ?我是否需要更改我为登录创建的Facebook应用程序中的内容?

请建议.

CBr*_*roe 10

好吧,事实证明这与审查有关 - 如果只是间接的话.

您现在需要让您的应用程序处于"开发"模式,以便能够在应用程序中为具有这些权限的角色询问.

一旦将其设置为"实时",即使您正在使用管理员或开发人员帐户进行测试,它也会显示"无效范围"错误.

在这方面,错误消息的措辞有点误导/不幸.