Facebook登录请求权限现在不是按钮

时间:2015-04-14 18:39:09

标签: php facebook facebook-graph-api oauth

在facebook api中,当用户使用facebook SDK登录您的网站时,它会向用户请求权限,具体取决于您所做的电子邮件或者users_friends的请求。如果用户点击“不是现在”,据我所知,它与击中下降相同。有没有办法让它再次询问用户是否点击了不是现在的选项?现在一个用户登录到Facebook,如果他们现在没有点击它将不返回我的网站(这很好我处理)然后如果用户再次登录facebook,它会自动失败而不是提示接受或不现在再次。无论如何要绕过这个?或者至少警告用户发生了什么?

1 个答案:

答案 0 :(得分:3)

如@CBroe所述,根据documentation

  

可以让某人一次授予您的应用权限   他们已经拒绝了。你应该有一个关于你为什么的教育屏幕   认为他们应该给你许可,然后重新询问。但如果   你使用前面描述的方法   登录对话框不会问   获得该许可。

     

这是因为一旦有人拒绝了权限,就会登录   除非你明确告诉,否则Dialog不会重新询问它们   对话框,您将重新要求拒绝许可。

您可以通过传递auth_type: rerequest标志来实现此目的:

FB.login(
  function(response) {
    console.log(response);
  },
  {
    scope: 'user_likes',
    auth_type: 'rerequest'
  }
);

然而,您有责任在再次显示对话框之前确保良好的用户体验并教育用户,因为这可能会引入无限循环(用户拒绝并再次询问) ,违反我们的政策 Platform Policy 7.5

  

如果某人拒绝许可,您可以在他们表示有权授予您许可后再次提示他们。