1

Facebook は今日、javascript SDK 認証で何かを変更しましたか? Mahmud Ahsan によって書かれたFB Javascript SDK Authetication を使用しましたが、今日まではすべて問題ありませんでした。現在、FB.logout() に問題があります。彼のデモにログインしてから、[ログアウト] ボタンをクリックしてください。そして、このボタンをもう一度押してログインしてみてください。応答しません。Firebug は次のように述べています: FB.logout() がアクセス トークンなしで呼び出されました。たぶん誰かがアクセストークンを FB.logout メソッドに追加する方法を知っているか、..この変更に関するドキュメントへのリンクを持っていますか?

私の認証:

window.fbAsyncInit = function() {
FB.init({ appId: '*************',
    status: true, 
    cookie: true,
    channelUrl: '//localhost/website/channel.html', // Channel File
    xfbml: true,
    oauth: true});

// run once with current status and whenever the status changes
FB.getLoginStatus(updateButton);
FB.Event.subscribe('auth.statusChange', updateButton);
};



var button,userInfo;

function updateButton(response) {
    button       =  document.getElementById('fb-auth');
    userInfo     =   document.getElementById('userInfo');

    if (response.authResponse){

    FB.api('/me', function(info) {
    login(response, info);  //function will just change text on the button..
    });

    button.onclick = function() {
        FB.logout(function(response) {    //here we are, FB.logout method =\
            logout(response);   //function will just change text on the button..
        });
    };
} else {

    button.innerHTML = 'Login';
    button.onclick = function() {
        showLoader(true);
        FB.login(function(response) {
            if (response.authResponse) {
                FB.api('/me', function(info) {
                    login(response, info);
                  });    
            } else {
                //user cancelled login or did not grant authorization

               alert('you are not logged in to facebook or have not granted this app basic permissins. please log in and grand basic permissins to user this application');
            }
        }, {scope:'email,user_birthday,user_about_me'});   
    }
}
}
4

1 に答える 1

0

解決しました!問題は FB.event.subscribe にありました。auth.statusChangeを別のリスナーに変更しました - auth.authResponseChange

于 2012-04-19T14:46:59.113 に答える