2012-01-20 12 views

答えて

0

は、あなたがそれを行うことができる方法である。

FB.init(
    { 
     "appId"  : xxxxxxxxxx, 
     "status"  : true, 
     "cookie"  : true, 
     "xfbml"  : true, 
     "oauth"  : true 
    }); 

    FB.Event.subscribe('auth.authResponseChange', function(response) 
    { 
     // need to wait few seconds for fb login status to work in FireFox 
     setTimeout('window.location.reload()', 3000); 
    }); 


function fbConnect(){ 
    FB.getLoginStatus(function(response) { 
     if (response.authResponse){ 
     FB.login(function(response) 
     { 
      if (response.authResponse) { } 
      else 
      { 
       //console.log('User cancelled login or did not fully authorize.'); 
      } 

     }, {"scope":"email,manage_pages"}); 
     } 
    }); 
} 

あなたはfbConnect()関数を呼び出す必要があります。また

あなたのページに<body>タグ以下これらを持っていることを確認してください:あなたはまだ含める必要はあり

function getPerms() { 
    FB.login(function(response) { 
     if (response.authResponse) { 
      //user has granted permissions 
     } 
    }, {scope:"email, ..."}); 
} 

function getStatus() { 
    FB.getLoginStatus(function(response) { 
     if (response.status === "connected") { 
      //user has granted permissions 
     } else { 
      getPerms(); 
     } 
    }); 
} 

:私は常にログインステータスと権限を処理するために、この設定を使用し

<div id="fb-root"></div> 
<script src="//connect.facebook.net/en_US/all.js"></script> 
0
  1. ほとんどの場合、あなたがscope代わりのperms
  2. 利用response.authResponseの代わりresponse.session
  3. を使用し、上記のリンクに基づいて here
  4. を参照して、OAuth 2.0のを使用するようにコードをアップグレードしなかった、より良い/正確な回答
  5. を得るために私のコード
  6. ようこそStackoverflowへ!
関連する問題