I have the following problem, thanks in advance for any help regarding this issue.
I configured my application in Apps > [NAME-OF-THE-APP] > Permissions (https://developers.facebook.com/apps/%5BAPP-ID%5D/permissions) to request “publish_actions”, when user use the application for the first time, as seen in the picture below…

The problem is that the Auth Dialog does not reflect this configuration, and therefore does not ask for permission to “publish_actions”…

I tried with different “User & Friends Permissions” and “Extended Permissions” but the Auth Dialog remains always the same.
I use the JavaScript SDK, here’s the code, and I’m trying to access my app within the Canvas.
<script>
window.fbAsyncInit = function() {
FB.init({appId:'398977410174164',status:true,cookie:true,xfbml:true});
function testAPI() {
console.log('Welcome! Fetching your information.... ');
FB.api('/me', function(response) {
console.log('UserID, ' + FB.getAuthResponse()['userID'] + '.');
console.log('Access token, ' + FB.getAuthResponse()['accessToken'] + '.');
});
}
function login() {
FB.login(function(response) {
if (response.authResponse) {
testAPI();
} else {
// cancelled
}
});
}
FB.getLoginStatus(function(response) {
if(response.status === 'connected'){
var signedRequest = response.authResponse.signedRequest;
}else if(response.status === 'not_authorized'){
login();
}else{
login();
}
});
};
(function(d){
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, ref);
}(document));
</script>
Thanks again for any help you can provide.
[For the xth time:]
These setting apply only to login from the app center. (And they also used to affect login via Authenticaed Referrals, which are now deprecated.)
Whenever you’re triggering the login yourself however (as you are doing with your FB.login call) – you have to specify the permissions there and then, via the
scopeparameter.