Facebook JavaScript SDK和类似状态

时间:2012-07-31 01:34:37

标签: javascript facebook

我是Facebook开发环境的新手,并且无法弄清楚如何检测我网站粉丝页面的“赞”状态。

我已经审核了How to check if a user likes my Facebook Page or URL using Facebook's APIhttps://developers.facebook.com/docs/reference/api/以及其他资源,但无济于事。

我尝试检测的是使用JavaScript,以下哪种情况属实:

  1. 我的网站访问者目前是否已登录Facebook? [是] [否]
  2. 如果用户登录Facebook,他们是否喜欢该品牌页面(Facebook粉丝页面)[是] [否]
  3. 我的逻辑是这样的:

    if ( [user is logged into facebook] ){
    // check to see if user is a fan of the page
    var query = FB.Data.query( 'select page_id from page_fan where uid=me() and page_id ='[PAGE_ID]');
    query.wait( function(rows) ) {
        if(rows.length) {
            // User already likes the page
            echo('Thanks for liking the page!');
        }
        else {
            // User has not yet liked the page
            echo('Like us on Facebook!');
        }
    });
    
    }
    
    else {
    // User is not logged into Facebook
    echo('Hello, world!');
    
    }
    

    我不清楚从这里做什么。我已经阅读了与此类似问题相关的十几篇文章,但其中大多数似乎都已过时,引用了已弃用的FBML和/或REST API。

    FWIW,我看到很多引用需要APPID,但是,我没有Facebook应用程序。我只想确定我网站上的用户是否喜欢我们在Facebook上关联的品牌/粉丝页面。

1 个答案:

答案 0 :(得分:1)

  

FWIW,我看到很多引用需要APPID,但是,我没有Facebook应用程序。

然后创建一个。如果没有应用程序,您无法完成的工作。

  

我只是想确定我网站上的用户是否喜欢我们在Facebook上关联的品牌/粉丝页面。

如果您的应用程序将作为页面选项卡应用程序嵌入到Facebook中,那么可以采用的方法是解析服务器端的signed_request参数。

如果情况并非如此,或者您想严格遵守客户端JavaScript - 那么您必须首先让用户连接到您的应用,请求他的许可阅读他的喜欢,然后从图表中获取信息API。