2012-06-29 50 views
2

我一直在研究这个问题几天,我对类似的问题提出了很多答案,不幸的是他们都是“不,你不能这么做”。所以,也许你可以帮助我找到更有效的方法,或者你可以有更好的答案。检查哪个用户喜欢Facebook页面

我在活动中运行游戏。当用户注册我的游戏时,他们会授权我的Facebook应用程序。他们因为做某些事情而在我的比赛中获得积分。他们获得积分的一件事就是喜欢所选的Facebook页面。

他们不喜欢通过我控制的任何接口的页面,所以我将在后台运行一个进程,检查我的授权用户是否喜欢该页面。

虽然我将会有数以万计的人玩这个游戏。我为他们每个人都有一个access_token,我知道我可以通过他们的access_token获取Person X的喜欢列表,但是获取10,000多个喜欢列表来检查他们是否喜欢这个页面似乎很荒谬......特别是如果他们不喜欢它,我不能把它们从列表中删除。我需要每隔几分钟检查一次活动的持续时间,看看他们是否已经喜欢这个页面并给他们分。一旦他们喜欢这个页面,我不再需要继续检查它们,但这仍然需要大量的请求。

有没有一种方法可以确定我的哪些10k +用户(我有单独的access_tokens)喜欢我的页面?

或者我可以获得最近喜欢某个特定页面的人员列表吗?

其他建议?

编辑:作为我的FB页面的管理员,我可以使用网站,只需点击,我可以看到所有喜欢我的网页的人,所以我觉得应该有某种方式来访问此信息以编程方式。我只是想念一些东西?

回答

2

这个问题似乎是使用FQL的候选人。有一张名为page_fan的表格,它充当userpage表格之间的连接表。您可以为每个用户运行查询以查看所选页面是否存在行。例如:

SELECT 1 FROM page_fan WHERE uid = me() and page_id = 8484927467 
+0

我刚刚尝试过这个查询(之前在我的研究过程中),但是我总是得到一个空数组,即使我为自己使用了一个令牌(所以我()指的是实际的我)我喜欢的页面的page_id)。 –

+0

嗯,它适合我。如果我喜欢该页面,则返回'作为响应'。[ ]“作为响应”。 –

+0

它看起来像我复制并粘贴page_id到我的测试查询时,我错过了一个数字,所以这是错误的ID。我再次尝试使用-right-id,它确实会返回像你一样的结果。我会试试这个。谢谢。 –

1

我跑在事件的游戏。当用户注册我的游戏时,他们会授权我的Facebook应用程序。他们因为做某些事情而在我的比赛中获得积分。他们获得积分的一件事就是喜欢所选的Facebook页面。

请澄清一些细节:

  • 是你的游戏运行的应用程序作为内部Facebook上的页面标签应用程序,否则有些地方?

  • 如果它正在页面标签中运行,那么这也是他们需要喜欢的页面吗?

如果是的话,你会得到的信息,如果用户喜欢signed_request参数内页自动,没有更多的API查询等必要的。

获取喜欢的10,000+列表来检查,如果他们喜欢的页面显得很荒谬......

请记住,你不必去通过每个用户的名单不过,您可以通过询问/userid/likes/pageid来询问是否有人喜欢特定页面。 (我知道,它仍然是每个用户的一个请求。)

我需要不断检查事件持续时间的每隔几分钟,以查看他们是否已经喜欢该页面并给予它们分数。一旦他们喜欢这个页面,我不再需要继续检查它们,但这仍然需要大量的请求。

您是否知道method in the JavaScript SDK of binding an event to a user clicking a like button on your page?也许你可以使用 - 在你的网站实现类似的按钮,捕捉用户使用该按钮的事件喜欢的页面...然后AJAX的事实发生在你的服务器,可能使一个更多的请求该特定用户验证不存在“作弊”(有人自己打电话给您的AJAX端点,而实际上并没有喜欢)......并且您应该拥有自己想要的东西,对吧?

+0

我的游戏正在其他地方运行。它没有发生在Facebook的页面标签上。 –

+1

我熟悉JS SDK,但我不要求他们喜欢来自任何特定位置的页面。他们可以直接在他们的iOS或Android Facebook应用程序中执行此操作,或者直接从桌面浏览器中直接浏览页面等。 –

1

嘿家伙们去你的页面设置禁止用户面板,并选择人们喜欢你的网页。谢谢

相关问题