Facebook登录后重定向

3

我谷歌搜索了将近4个小时,并发表了这篇文章。 我正在尝试在我的网站上实现Facebook登录。 问题在于登录正常工作,但是在登录后必须重定向到另一个自定义页面,但它没有重定向而是停留在同一页面。 这是我正在使用的代码。

 <head>
       <title>My Facebook Login Page</title>
       <script src="//connect.facebook.net/en_US/all.js"></script>
    </head>
    <body>

      <div id="fb-root"></div>
      <fb:login-button perms="email"></fb:login-button>

    <script>
        window.fbAsyncInit = function() {
            FB.init({
                appId  : 'XXXXXXXXXX',
                status : true,
                cookie : true,
                xfbml  : true
            });

            FB.Event.subscribe('auth.login', function() {
                window.location = "about_us.html";
            });
        };

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

      <!-- <div class="fb-login-button" >Login with Facebook</div> -->

请指导我哪里出错了,如果可能的话,请纠正代码。我是从下面的链接中获取的代码。 Redirect after clicking on the Facebook login button, even if already logged in Facebook 提前感谢您。

1
尝试使用此FB.getLoginStatus来确定登录状态并执行window.location重定向。 - Alvin K.
2个回答

5

你可以将这个代码片段添加到任何位置

FB.login(function(response) {
     if (response.authResponse) {
        window.top.location = "http://www.foo.com";
     }

});

0

当我放置

window.top.location = "http://www.foo.com";

下面

FB.getLoginStatus(function(response) {
statusChangeCallback(response);
window.top.location = "";
});

它运行成功了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接