检测用户是否已经喜欢没有user_likes权限的FB页面

时间:2014-08-06 09:22:25

标签: ruby-on-rails facebook facebook-graph-api

我需要知道用户是否已经喜欢我的FB页面,以便向他显示按钮小部件。

我正在使用user_likes权限执行此操作(Rails - Koala):

@alreadyLiked = @api.get_object("me/likes/123412341234")

但我从Facebook获得反馈,我不能使用user_likes权限来执行此操作。没有这个许可,有没有办法做到这一点?例如,要知道按钮小部件是否显示"你喜欢这个"或者"喜欢"文本?

编辑:这不是网页标签,而是使用图谱API的Android应用

1 个答案:

答案 0 :(得分:1)

由于您试图在Facebook页面上实现此目的,因此您应该使用首次加载时发布到您应用的页面返回的signed_request。它将包含有关用户的信息,包括他们是否喜欢该页面,是管理员还是user_id(如果他们已通过身份验证)。

如果您对signed_request进行解码,您将看到如下内容:

{
    [algorithm] => HMAC-SHA256
    [issued_at] => 1378146888
    [page] => Array
        (
            [id] => 1234567890
            [liked] => 1
            [admin] => 1
        )

    [user] => Array
        (
            [country] => gb
            [locale] => en_US
            [age] => stdClass Object
                (
                    [min] => 21
                )

        )

}

您可以检查page['liked'] == 1是否检查用户是否喜欢该页面。