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