所有的FB.api突然无法在我的应用程序上运行

时间:2012-09-06 08:42:07

标签: php facebook

我的应用在这几天内运作良好。但随着任何修改,它突然下降了。 我正在尝试测试FB.api函数,例如FB.login,FB.api('me / ........'),它也没有任何回复。以下是我的原始代码。是关于FB.api的任何更新?

    <script type="text/javascript" src="jquery.min.js"></script>
    <script type="text/javascript">
        (function(d, s, id) {
            var js, fjs = d.getElementsByTagName(s)[0];
            if (d.getElementById(id)) {return;}
            js = d.createElement(s); js.id = id;
            js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
            fjs.parentNode.insertBefore(js, fjs);
        }(document, 'script', 'facebook-jssdk'));
    </script>
    <script type="text/javascript">
        window.fbAsyncInit = function() {
            FB.init({
                appId  : '<?php echo AppInfo::appID(); ?>',
                status : true,
                cookie : true, 
                frictionlessRequests: true
            });

            FB.Canvas.setAutoResize();

            FB.getLoginStatus(function(response) {
                FB.Canvas.scrollTo(0,0);

                $('area').click(function() {
                FB.login(function(response) {
                        if (response.authResponse) {
                            FB.api('/me/permissions?access_token=' + response.authResponse.accessToken, function(response) {
                                alert("abc:" + response.authResponse.accessToken);

                                if (response.data[0].publish_stream == undefined) {
                                    return;
                                }

                                if (response.data[0].publish_stream == 1) {
                                    window.location.href = "like.php";
                                }
                            });
                        }
                    }, {scope: 'email,user_likes,publish_stream'});

                    return false;
                });
            });/**/
        };
    </script>

1 个答案:

答案 0 :(得分:2)

你错过了Facebook JS-SDK中FB.Canvas.setAutoResize()方法的弃用,使用它会导致错误,并会破坏你的代码。

在您的情况下,执行FB.Canvas.setAutoResize()之后没有任何内容。

您应该使用FB.Canvas.setAutoGrow()代替Developer blogDeveloper Roadmap进行更改...

专业提示:始终,但始终检查您的错误控制台,错误消息和例外是您的朋友!