如何使用facebook JS SDK检查用户是否喜欢我的页面?

时间:2012-06-05 05:26:37

标签: javascript facebook facebook-javascript-sdk

我目前正在一个Facebook应用程序中工作,该应用程序将在一个具有类似页面功能的网页中运行在facebook之外,但基于类似我必须在不同页面上重定向页面,

我尝试了很多代码来检查用户是否已经喜欢页面但是失败了。

所以如果有人知道如何检查这个,请帮助我。

提前致谢。

注意:只想使用JS SDK而不是PHP SDK。

2 个答案:

答案 0 :(得分:1)

要从Facebook访问类似数据,您需要user_likes权限。

<div id="fb-root">
</div>
var page_id = 'YOUR PAGE / URL ID';
(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);
} ());

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

    FB.login(function(response) {
        if (response.authResponse) {
            FB.api('/me/likes/' + page_id, function(api_response) {
                try {
                    if ((api_response.data[0].name) != undefined)
                        alert(api_response.data[0].name);
                    else
                        alert('you are not like this page');
                }
                catch (e) {
                    alert('you are not like this page');
                }
            });
        }
    }, { scope: 'email,user_likes' });
};

答案 1 :(得分:0)

您必须获得user_likes权限,然后拨打图表API请求/me/likes/{facebook_id_of_your_URL}

该调用返回带有URL对象数据的数据数组,如果用户尚未喜欢它,则返回空数据数组。