Facebook JS SDK要求太多权限
我设置了一个Facebook标签,要求为用户发送电子邮件许可 - 这种方式很好,但是出现的对话显示' Appname想要访问您的公共个人资料,朋友列表和电子邮件地址。 “
这会降低应用的参与度 - 我不想公开个人资料或好友列表。
代码如下,用假appId:
var useremail;
window.fbAsyncInit = function() {
FB.init({
appId: '01234567890',
cookie: true,
xfbml: true,
oauth: true
});
FB.login(function(response) {
if (response.authResponse) {
FB.api('/me', function(response) {
useremail=response.email;
//Do stuff
});
} else {
//No access
}
},{scope: 'email'});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
即使我删除了电子邮件范围请求,它仍然声称我是在用户的公开个人资料和好友列表之后。 此前没有此问题,它曾用于显示可在Apps> Settings> Permissions区域中预览的友好可定制对话框。
我找不到任何可能导致此问题的其他设置。 任何想法,在此先感谢...
我将其标记为已回答,该问题已在http://www.insidefacebook.com/2012/12/12/how-changes-to-facebooks-app-auth-process-affect-developers/
简而言之,在通过JavaScript SDK登录时显示的权限对话框中,Facebook已将“基本信息”重命名为“公开个人资料和好友列表”。
我们正在恢复在我们所做的Facebook比赛中手动填写电子邮件字段,这可能会导致更多的参与,而不是被迫在访问者面前抛出如此不祥的声音对话,并让人们正确地说'不,谢谢'。
你看到了吗?
FB.api('/me', function(response) {
线? 替换/我/电子邮件,这应该工作。
我从Graph API中得到了这个。
链接地址: http://www.djcxy.com/p/83137.html