5

有没有办法确定 Open Graph 中的对象是否被喜欢?

该文档似乎暗示我必须在我的对象上发布一个类似的操作,并期望在它之前被喜欢时出现错误 3501。

从 UI pov 这没有意义,我想将我的喜欢按钮 ui 更改为“不喜欢”状态,而不必喜欢我的对象并查看它是否失败。

谢谢!

4

2 回答 2

2

如果您正在专门寻找 Open Graph 上的喜欢Object(如在 Open Graph 的目标中Action),并且您正在谈论内置 ( og.likes) 喜欢,Shawn 的答案大多是正确的,但您需要查看不同的FQL 表。

Open GraphObject只是一个 URL,它解析为og:type在其标题中包含元数据的页面。Facebook 将这些视为link对象(您可以使用 进行检查SELECT type FROM object_url where url='http://url.to/your/object'

您可以在linklink_stat FQL 表中找到有趣的信息,但您要查找的是 Facebook 将用户喜欢与链接相关联的连接表:url_likes表。

因此,要判断当前用户是否喜欢给定的 Open Graph Object,您可以使用:

SELECT user_id FROM url_like WHERE user_id=me() AND url='http://url.to/your/object'

如果您返回一个值,则当前用户已经喜欢它。如果你得到一个空数组,则当前用户不喜欢它。

据我所知,Graph API 无法做到这一点,只有 FQL。不过,我很想被证明是错误的。

于 2012-10-16T02:17:49.533 回答
1

根据对象,如果对象具有相似的连接,您可以使用图形 api 来确定当前用户是否喜欢该对象。

我以类似的方式使用 fql 来检查用户是否喜欢帖子。

/fql?q=SELECT+user_id+FROM+like+WHERE+post_id=\''.$postid.'\'+AND+user_id=me()

参考帖子/喜欢https://developers.facebook.com/docs/reference/api/page/

于 2012-06-26T00:02:16.917 回答