使用 Socialite Laravel 检索 Facebook 用户详细信息
Retrieve Facebook user details with using Socialite Laravel
我正在使用 Laravel 版本 5.4.36,并且我正在使用 Laravel Sociallite plugin 将用户与 Facebook 联系起来。
现在,我想获取已登录的用户信息,例如出生日期性别、地址、手机号码或此 Facebook 官方文档中给出的 any permissions。
我试过下面的代码
$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();
现在,当我使用 Facebook 按钮点击登录时,它会显示类似
的错误
Invalid Scopes: user_birthday, user_location. This message is only shown to developers. Users of your app will ignore these permissions if present. Please read the documentation for valid permissions at https://developers.facebook.com/docs/facebook-login/permissions
我尝试了不同的范围,例如字段名称 = 年龄和范围 = user_age_range
字段名称 = 生日和范围名称 = user_birthday 对于字段名称 = 朋友和字段名称 = user_friends
对于我使用的每个范围,我都会收到范围无效的错误。
我是不是做错了什么?我是否需要更改我为登录创建的 Facebook 应用程序中的某些内容?
求推荐。
您需要在您的 Facebook 应用程序页面上明确声明您需要的范围。打开 https://developers.facebook.com/apps/ 仪表板,转到应用审查并提交您需要范围的项目。之后您需要遵守 facebook 的要求,通常涉及登录流程和功能使用的屏幕截图。
请注意,此过程需要相当长的时间。我创建的一些应用程序计划在 8 月初进行审核。
user_birthday
、user_location
、user_friends
还有许多其他范围需要 Facebook 审核才能提供给 public 用户。但是,您可以将这些范围用于开发人员和测试用户帐户。
好吧,事实证明这毕竟与审查有关 - 如果只是间接的话。
您现在需要让您的应用程序处于“开发”模式,以便能够向在应用程序中具有角色的人请求这些权限。
将其设置为“实时”后,即使您使用管理员或开发者帐户进行测试,它也会显示“无效范围”错误。
错误消息的措辞在这方面有点misleading/unlucky。
此错误是因为 Facebook 已将您正在寻找的权限更新为新权限,请参阅最新权限此文档显示最新权限并更新您的 https://developers.facebook.com/docs/facebook-login/permissions
我正在使用 Laravel 版本 5.4.36,并且我正在使用 Laravel Sociallite plugin 将用户与 Facebook 联系起来。
现在,我想获取已登录的用户信息,例如出生日期性别、地址、手机号码或此 Facebook 官方文档中给出的 any permissions。
我试过下面的代码
$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();
现在,当我使用 Facebook 按钮点击登录时,它会显示类似
的错误Invalid Scopes: user_birthday, user_location. This message is only shown to developers. Users of your app will ignore these permissions if present. Please read the documentation for valid permissions at https://developers.facebook.com/docs/facebook-login/permissions
我尝试了不同的范围,例如字段名称 = 年龄和范围 = user_age_range 字段名称 = 生日和范围名称 = user_birthday 对于字段名称 = 朋友和字段名称 = user_friends
对于我使用的每个范围,我都会收到范围无效的错误。
我是不是做错了什么?我是否需要更改我为登录创建的 Facebook 应用程序中的某些内容?
求推荐。
您需要在您的 Facebook 应用程序页面上明确声明您需要的范围。打开 https://developers.facebook.com/apps/ 仪表板,转到应用审查并提交您需要范围的项目。之后您需要遵守 facebook 的要求,通常涉及登录流程和功能使用的屏幕截图。
请注意,此过程需要相当长的时间。我创建的一些应用程序计划在 8 月初进行审核。
user_birthday
、user_location
、user_friends
还有许多其他范围需要 Facebook 审核才能提供给 public 用户。但是,您可以将这些范围用于开发人员和测试用户帐户。
好吧,事实证明这毕竟与审查有关 - 如果只是间接的话。
您现在需要让您的应用程序处于“开发”模式,以便能够向在应用程序中具有角色的人请求这些权限。
将其设置为“实时”后,即使您使用管理员或开发者帐户进行测试,它也会显示“无效范围”错误。
错误消息的措辞在这方面有点misleading/unlucky。
此错误是因为 Facebook 已将您正在寻找的权限更新为新权限,请参阅最新权限此文档显示最新权限并更新您的 https://developers.facebook.com/docs/facebook-login/permissions