我正在尝试完成以下操作:在客户的主页(Facebook应用)上,在用户使用Facebook登录后,应该有覆盖,但仅当用户没有“喜欢”客户的Facebook页面(与我正在创建的应用程序不同)。在这个叠加层上,客户的Facebook页面应该有一个类似的按钮。
我想我可以使用图形API来访问/(userid)/likes/(pageid)
。但是,我收到一个空洞的结果,即使我“喜欢”这个页面。
如果我访问/(userid)/likes
,我只会得到两个结果。这两个是我“喜欢”的页面,但这两个不会出现在我的脸书帐户中的“其他喜欢”之下。 “其他喜欢”下的页面(客户页面就是其中之一)但是不会出现在api调用的结果中。
有趣的是,无论是否添加“user_likes”权限,我总是会在结果中获得这两个页面。我通过调用/(userid)/permissions
进行了双重检查,并正确识别了权限设置。
有什么想法吗?谢谢!
答案 0 :(得分:0)
您需要拥有“user_likes”权限,然后您可以在FQL中执行以下操作:
select uid, page_id from page_fan where uid=me() and page_id={YOUR_PAGE_ID}
如果您没有收到空结果,则用户会喜欢您的页面。
如果您的应用是页面标签应用,您还可以使用SignedRequest的字段“page”,如下所述:https://developers.facebook.com/docs/reference/login/signed-request/