2010-02-12 129 views
1

我想检查我的用户是否是我的Facebook页面的粉丝。我觉得这样的事情应该这样做:如何检查用户是否是我网站上的Facebook页面的粉丝?

<script type="text/javascript" src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/en_US"></script> 
<script type="text/javascript">FB.init("my api key","xd_receiver.htm");</script> 
    <script type="text/javascript"> 
    //<![CDATA[ 
    FB_RequireFeatures(["Api"], function(){ 

    var api = FB.Facebook.apiClient; 
      api.pages_isFan(PAGE_ID,gigyaUser.FACEBOOK_USER_ID,function(response){ 
     alert(response); 
    }); 

    }); 

    //]]> 
    </script> 

但是,由于某种原因,我不断收到空,即使该用户实际上是在页面的粉丝。我错过了什么吗?

回答

0

我想你几乎没有错。 这段代码适合我。

假设: 1. fanPageUID =转页扇的UID 2.和用户的UID是用户 3的UID(和你有一个活动会话)......这可能是最困难的部分,但不这个问题的一部分。

function checkifFan() { 
    FB_RequireFeatures(["Api"], function(){ 
    var api = FB.Facebook.apiClient.pages_isFan(fanPageUID,userUID,function(response){ 
     if (response==false) { 
      setTimeout('checkifFan()', 300); //every 300ms check if they have pressed fan 
     } 
     else { 
      location.reload(); 
     } 
    }); 

    }); 
    } 
0

您还可以检查用户是由以下脚本您的网站的粉丝:

<fb:login-button scope="user_likes"> 
    Grant Permissions to Allow access to Likes 
</fb:login-button> 

<button onclick="checkDoesLike()">Check if user Likes the Page</button> 

<h1>Like this Application's Page</h1> 
<fb:like-box profile-id="your_page_id"></fb:like-box> 

<script> 
    window.checkDoesLike = function() { 
    FB.api({ method: 'pages.isFan', page_id: 'your_page_id' }, function(resp) { 
     if (resp) { 
     Log.info('You like the Application.'); 
     } else { 
     Log.error("You don't like the Application."); 
     } 
    }); 
    }; 
</script> 
相关问题