Facebook身份验证无效

时间:2012-02-03 03:50:16

标签: javascript facebook facebook-javascript-sdk

我的网站正在使用Facebook Connect,但是一个月后它就无法运行了。我怀疑Facebook改变了一些东西。我试图找出答案,但这是不可能的。我有一个启动身份验证的Java文件,但我不知道该文件是否存在问题。好吧,基本上它连接,但它没有返回我的网站的注册表。

   window.fbAsyncInit = function() {
FB.init({appId: cfg_facebook_app_id, status: true, cookie: true, xfbml: true}); 


    //initial login check
FB.getLoginStatus(function(response) {
    if (response.session) {
        //logged in, force logout
        FB.logout(function() {
          //logged out, subscribe to events
          loginEvents();
        });
    } else {
        //not logged in
        loginEvents();
    }
});

function loginEvents() {
    FB.Event.subscribe('auth.logout', function(response) {
        // do something with response
        logout();
    });

    FB.Event.subscribe('auth.login', function(response) {
        login(response);
        //login redirects the user. Before logout fires()
        });
        }

     };
    (function() {
var e = document.createElement('script');
e.type = 'text/javascript';
e.src = document.location.protocol +
    '//connect.facebook.net/en_US/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
    }());

    function login(){
FB.api('/me', function(response) {
    window.location = cfg_site_url + 'facebook_auth.php?hashcode='+response.id;
});
    }

1 个答案:

答案 0 :(得分:0)

尝试{}更新到新版本的javascript sdk https://developers.facebook.com/docs/reference/javascript/

  

截至2011年12月13日,JavaScript SDK现在仅支持OAuth   2.0用于身份验证。在JS SDK中启用OAuth 2.0的能力于7月首次推出。所有应用都提供到10月1日,   2011年进行测试和迁移。有了这个改变,请确保你   使用FB.getAuthResponse获取访问令牌。