Facebook的JavaScript SDK和Like状态
问题描述:
我是新来的Facebook开发环境,无法弄清楚如何检测我的网站粉丝页面的Like状态。Facebook的JavaScript SDK和Like状态
我已阅读How to check if a user likes my Facebook Page or URL using Facebook's API和https://developers.facebook.com/docs/reference/api/等资源,无济于事。
我试图来检测是使用JavaScript其中下列条件为真:
- 是我的网站访问者当前登录到Facebook? [是] [否]
- 如果用户登录到Facebook上,有他们喜欢的品牌页面(Facebook粉丝页面)[是] [否]
我的逻辑是这样的:
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上的关联品牌/粉丝页面。
答
FWIW,我看到很多需要APPID的引用,但是,我没有Facebook应用程序。
然后创建一个。没有应用程序就无法完成你想要做的事情。
我只是试图确定我的网站上的用户是否喜欢我们在Facebook上的关联品牌/粉丝页面。
如果您的应用程序将嵌入到Facebook作为页面选项卡应用程序,那么解决signed_request参数服务器端的方法。
如果情况并非如此,或者您想严格遵守客户端JavaScript,那么您必须先让用户连接到您的应用程序,请求他的权限以阅读他的喜欢,然后从中获取信息图表API。