/(userid)/ likes /(pageid)返回不完整的结果

问题描述:

我试图完成以下操作:在用户(Facebook应用程序)的主页上,用户使用Facebook登录后,应该有一个覆盖,但只有当用户没有“喜欢”客户的Facebook页面(这是不同于我创建的应用)。在这个覆盖层上,应该有一个像客户Facebook页面一样的按钮。/(userid)/ likes /(pageid)返回不完整的结果

我认为我可以用图api来访问/(userid)/likes/(pageid)。但是,即使我“喜欢”该页面,我也会收到一个空的结果。

如果我访问/(userid)/likes,我只会得到两个结果。这两个页面是我“喜欢”的页面,但这两个不会显示在我的Facebook帐户下的“其他喜欢的”下。 “其他喜欢”下的页面(客户页面就是其中之一),但不显示在api调用的结果中。

有趣的是,无论我添加“user_likes”权限,我总能得到这两个页面的结果。我再次调用/(userid)/permissions进行检查,并且权限设置被正确识别。

任何想法?谢谢!

您需要具有的权限“user_likes”,那么你可以做这样的事情在FQL如下:

select uid, page_id from page_fan where uid=me() and page_id={YOUR_PAGE_ID} 

如果您没有收到一个空的结果,用户喜欢你的网页。

如果您的应用程序是一个页面选项卡应用程序,您还可以使用SignedRequest的字段“页面”,如下所述:https://developers.facebook.com/docs/reference/login/signed-request/