Facebook api突然停止工作

时间:2011-09-04 15:12:03

标签: javascript facebook api facebook-graph-api

我有这个facebook js api代码,它一直工作到一天后... 现在它突然停止工作.. 我正在将它用于拼贴项目,可能我的搭档可能已经摆弄它但我似乎无法发现它有任何问题......

<div id="fb-root"></div>
  <script src="http://connect.facebook.net/en_US/all.js"></script>
  <script type="text/javascript" >
     var access_token;
     FB.init({ 
        appId:'XYZ', 
        cookie:true, 
        status:true, 
        xfbml:true 
     });

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

    function login_event(){
        FB.api("/me",function(user){
            var request = new XMLHttpRequest();
            request.onreadystatechange=function(){
            uid = user.id;
            if(request.readyState==4 && request.status==200){
                    $("#middle").load("login_manager.php?uid="+uid);
                }
            }
            request.open("GET", "sessions.php?uid="+uid, true);
            request.send();  

        })
    }

    if(navigator.appCodeName=="Mozilla"){

        FB.getLoginStatus(function(response) {

            document.getElementById("middle").innerHTML = "<img src=\"../images/loading-round2.gif\">";
            if (response.session) {
                access_token = response.session.access_token;   
                FB.api('/me', function(user) {  
                   if (user!=null) {
                    var uid = user.id;
                    var request = new XMLHttpRequest();
                    request.open("GET", "sessions.php?uid="+uid, true);
                    request.send();           
                    request.onreadystatechange=function(){
                        if(request.readyState==4 && request.status==200){
                                $("#middle").load("login_manager.php");
                                }
                            }
                        }
                    });
                }
                else{
                    document.getElementById("middle").innerHTML = '<fb:login-button perms="email,user_checkins,offline_access,publish_stream">Login with Facebook</fb:login-button>';
                    FB.XFBML.parse(document.getElementById('middle'));
                }             
            });

        }



    </script>

它似乎没有进入getLoginStatus()函数

2 个答案:

答案 0 :(得分:0)

您可以使用firebug或警告声明调试您的javascript。今天我尝试了类似于你的脚本的以下js,这对我有用:

<fb:login-button autologoutlink="true"></fb:login-button>      
    <div id="fb-root"></div>    
    <script>
      window.fbAsyncInit = function () {
          FB.init({
              appId: '159618137417054',//enter your app id
              status: true,
              cookie: true,
              xfbml: true
          });
          FB.Event.subscribe('auth.login', function (response) {
              window.location.reload();
          });
      };
      (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);
      }());
          alert('FB API Test')
      FB.api('/me', function (response) {
          alert(response.name)
          alert(response.id);//now my facebook ID is available to javascript
      });
    </script>

答案 1 :(得分:0)

它已经开始工作了.. 这是facebook结束时的一个问题