0

我试图在我的网站上集成 fb 登录,但无法正常工作。我提到了其他帖子和教程,但我仍然无法让它工作。

<html>
    <head>
      <title>My Facebook Login Page2</title>
    </head>
    <body>
<div id="fb-root"></div>
    <script type="text/javascript">
        window.fbAsyncInit = function() {
            FB.init({appId: '317329008329948', status: true, cookie: true, xfbml: true});

            FB.Event.subscribe('auth.login', function(response) {
                login();
            });m
            FB.Event.subscribe('auth.logout', function(response) {
                logout();
            });

            FB.getLoginStatus(function(response) {
                if (response.session) {
                    greet();
                }
            });
        };
        (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) {
                alert('You have successfully logged in, '+response.name+"!");
            });
        }
        function logout(){
            alert('You have successfully logged out!');
        }
        function greet(){
            FB.api('/me', function(response) {
                alert('Welcome, '+response.name+"!");
            });
        }


    </script>
<fb:login-button autologoutlink='true' perms='email,user_birthday,status_update,publish_stream'></fb:login-button>

</body>
 </html>

我不断收到此错误:“发生错误,请稍后再试”

4

2 回答 2

3

请不要盲目地使用 Facebook 在他们的示例中显示的回调并忽略响应值。即使确实没有执行该操作,Facebook 也会调用这些事件。这就是为什么他们给你“响应”变量。

在决定做什么之前,您应该查看响应变量的属性值。

我给了markzzz同样的建议,这对他有用

为什么在 auth.login 之后调用 auth.logout?

于 2012-04-10T18:32:25.240 回答
1

根据我的经验,当我将我的 fb 代码放在应用程序设置中未指定的网站上时,我会收到此错误。

因此,我建议您Site URL在应用程序设置中指定的相同 url 上运行代码。

于 2012-04-10T18:39:14.580 回答