2014-01-06 70 views
1

我想在自定義頁面標籤上點擊Facebook上的頁面標識。這是我正在使用的代碼。這是從Facebook獲取頁面標識的正確方法。我能夠使用此代碼獲取訪問令牌和用戶標識值。任何幫助是極大的讚賞。如何使用javascript sdk獲取Facebook頁面ID?

window.fbAsyncInit = function() { 
    FB.init({ 
     appId: 'xxxxxxxxx', 
     status: true, 
     cookie: true, 
     xfbml: true 
    }); 

    FB.Event.subscribe('auth.authResponseChange', function (response) { 
     // Here we specify what we do with the response any time this event occurs. 
     if (response.status === 'connected') {                   
     } else if (response.status === 'not_authorized') { 
      //FB.login(); 
     } else { 
      //FB.login(); 
     } 
    }); 
}; 
// Load the SDK asynchronously 
(function (d) { 
    var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; 
    if (d.getElementById(id)) { return; } 
    js = d.createElement('script'); js.id = id; js.async = true; 
    js.src = "//connect.facebook.net/en_US/all.js"; 
    ref.parentNode.insertBefore(js, ref); 
} (document)); 

$('.btnclick').click(function() { 
    fblogin(); 
}); 

function fblogin() {   
    //FB.login(); 
    FB.login(function (response) { 
     if (response.authResponse) {     
      var sq = FB.getAuthResponse()['signedRequest']; 
      var data = sq.split('.')[1]; 
      data = JSON.parse(atob(data)); 
      alert(data);     
     } else { 
      alert('User cancelled login or did not fully authorize.'); 
     } 
    }, { scope: 'user_location,user_hometown,user_photos,friends_photos,friends_location,friends_hometown,email,user_likes,publish_actions,manage_pages', display: 'popup' }); 
} 
+0

此鏈接可能會幫助您:https://developers.facebook.com/docs/reference/login/signed-request/ - 您可以在簽名請求中找到頁面標識。 – Jurik

+0

我知道它返回的參數很少,但是我從signed_request獲得的所有代碼都是一些代碼,issued_at和userid –

+0

是的,並且在這個「某些代碼」中是以json格式顯示頁面的詳細信息:'包含頁面id字符串,喜歡boolean(如果用戶喜歡該頁面,則設置爲true,否則爲false)並且管理員布爾型「 – Jurik

回答

0

第1步:獲得manage_pages許可

第2步:

FB.api('/me?fields=accounts', function (apiResponse) { 
     //apiResponse will have page id inside apiResponse.accounts.data 
    }); 

'/我場=帳戶?' - 帳戶是用來獲取FB的pageid

對於入門頁詳細表單頁面編號

FB.api('/ page id ?fields=about,albums{link},photos{link},phone,location,single_line_address', function (page) { 
       //To get page details from page id 
      }); 
相關問題