StackOverflow和Untappd" force"用户接受他们的权限?
当我尝试使用JavaScript SDK时,我一直在使用范围对象来请求电子邮件地址,但我一直在看"编辑您提供的信息",允许用户不提供他们的电子邮件地址。我甚至尝试过关注Manually Building a Login Flow,结果相同。
图像:
由于我们正在通过Facebook向用户提供在网站上注册的选项,因此我们依赖于电子邮件地址在我们的数据库中创建帐户。
然而像StackOverflow和Untappd这样的网站没有提供这样的选项,我被迫接受这些权限。
那么秘密是什么?我该如何实现这一目标?这是我俯瞰某处的环境吗?或者是否需要"批准"?
答案 0 :(得分:15)
他们正在使用2014年4月底之前创建的旧应用程序,当时它是不同的。您不能再强制它,您只能通过return_scopes
标志检查用户是否在登录后授权了权限,例如:
https://developers.facebook.com/docs/reference/javascript/FB.login/v2.2
答案 1 :(得分:4)
这是使用Facebook SDK V4.x为我工作的解决方案: How to “rerequest” email permission using Facebook iOS SDK 4.x?
如果用户取消选择"电子邮件"第一次允许和收益,连续第二次请求电子邮件访问,不允许他取消选择电子邮件并点击“确定”#34;了。
他只会被提供" Not Now"和"好的" (如果取消选择电子邮件,它会变灰)。
编辑:以下是如何使用Facebook JS SDK重新申请:
FB.login(function(response) {
console.log(response);
}, {
scope: 'user_likes',
auth_type: 'rerequest'
});