Javascript 使用内置的like操作(og.likes)检查当前用户是否喜欢URL

Javascript 使用内置的like操作(og.likes)检查当前用户是否喜欢URL,javascript,facebook,Javascript,Facebook,我的应用程序使用Facebooks Official实现了一个自定义的类似按钮 唯一缺少的是,如果用户已经喜欢该资源,则禁用该按钮。在使用FQL测试了各种都不成功的方法之后,我刚刚尝试发出一个get请求,lo和SEOH针对该请求返回当前用户的开放图 不幸的是,我似乎找不到一种方法来过滤特定对象id的结果。有人能推荐一种解决方案吗?或者知道一种使用FQL实现相同目的的方法吗?请注意,我们这里讨论的是开放图形类,它似乎不同于使用类似Facebook按钮创建的标准类。我不确定API是否可用 但是,你有

我的应用程序使用Facebooks Official实现了一个自定义的类似按钮

唯一缺少的是,如果用户已经喜欢该资源,则禁用该按钮。在使用FQL测试了各种都不成功的方法之后,我刚刚尝试发出一个get请求,lo和SEOH针对该请求返回当前用户的开放图


不幸的是,我似乎找不到一种方法来过滤特定对象id的结果。有人能推荐一种解决方案吗?或者知道一种使用FQL实现相同目的的方法吗?请注意,我们这里讨论的是开放图形类,它似乎不同于使用类似Facebook按钮创建的标准类。

我不确定API是否可用

但是,你有解决办法。正如您知道正在查看的资源一样,您知道用户id,当发布任何操作时,将其存储在您的数据库中,并使用该信息禁用

一旦我找到更多信息,我会让你随时更新

编辑

包含用户喜欢的开放图URL的FQL表

要阅读您需要的url_-like表

用户\u喜欢当前用户喜欢的所有打开的图形URL的权限 会话用户朋友\u喜欢所有打开的图形URL的权限,如 当前会话用户的好友


来源:

我也一直在努力了解如何使用graph API或FQL获取有关这些og.like的信息。它们似乎不存储在任何常见的表url\u like或link\u stat中


为了检查用户是否喜欢该对象,我点击了您提到的Graph API,URL为Graph.facebook.com/[userid]/og.likes。然后我在响应中循环遍历数组,寻找与我感兴趣的对象的URL或ID匹配的数组。如果用户有很多og.likes,这不是特别有效,但是它完成了任务。

看起来您可以为URL设置一个like按钮,然后通过在WHERE子句中输入ANDing URL=检查用户是否喜欢它: https://api.facebook.com/method/fql.query?query=SELECT 来自url的url,如user\u id=me和url=http://www.yourUrl.com&access_token=...


请注意,url必须使用引号

是的,我当然可以这样做。我希望不惜一切代价避免将此类数据存储在我的数据库中。谢谢调查。不幸的是,我去过那里,与文档相反,这个表似乎只包含真实的喜欢,没有开放的图形喜欢。我认为这里更大的问题是,查询单个用户的og.likes将允许禁用按钮,但不允许在对象上显示喜欢的数量。这是与标准的类似facebook的功能相匹配的必要条件。大家都同意,这正是引导我们远离使用og.likes的原因——没有办法问facebook一个特定的对象有多少个。海报似乎对此不感兴趣,或者可能还没有意识到这是一个问题。这似乎是一个bug。