2012-01-02 31 views
0

私はjavascriptコードを使って自分のプロジェクトにfacebook loginを実装していました。うまくいきましたが、今は動作していません。ログインポップアップも機能していませんでした。facebook login not working

コードはここに

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

である私が来ましたが、スクリプトの問題がまだあるscope.theポップアップにパーマを変更しました。使用

スクリプトコード:

<div id="fb-root"></div> 
    <script type="text/javascript"> 
     window.fbAsyncInit = function() { 
      FB.init({appId: 'APPID', status: true, cookie: true, xfbml: true}); 

      /* All the events registered */ 
      FB.Event.subscribe('auth.login', function(response) { 
       // do something with response 
       login(); 
      }); 
      FB.Event.subscribe('auth.logout', function(response) { 
       // do something with response 
       logout(); 
      }); 

      FB.getLoginStatus(function(response) { 
       if (response.session) { 
        // logged in and connected user, someone you know 
        login(); 
       } 
      }); 
     }; 
     (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) { 
       fqlQuery();//fqlquery function 

      }); 
     } 
     function logout(){ 
      document.getElementById('login').style.display = "none"; 
     } 



     function fqlQuery(){ 
      FB.api('/me', function(response) { 
       var query = FB.Data.query('select name, hometown_location, sex, pic_square from user where uid={0}', response.id); 
       query.wait(function(rows) { 

        document.getElementById('name').innerHTML = 
        'Your name: ' + rows[0].name + "<br />" + 
        '<img src="' + rows[0].pic_square + '" alt="" />' + "<br />"; 
       }); 
      }); 
     } 

問題を解決する他の方法があります?助けてください....

+0

"機能しない" – hugomg

答えて

0

私はFacebook IDのSDKのSDKを読み込むときにquerystringからAPP IDを逃していると思います。 https://developers.facebook.com/docs/reference/plugins/login/パー彼らは

<div id="fb-root"></div> 
<script>(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&appId=APP_ID"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk'));</script> 

何らかの理由のためにそこにそれをしたい。また、私はあなたのログインボタンのHTMLが正しい属性を持っていないと指摘しました。ドキュメントによっては、show-faces,widthmax-rows、およびscopeが唯一の有効なパラメータです。