有没有办法确定 Open Graph 中的对象是否被喜欢?
该文档似乎暗示我必须在我的对象上发布一个类似的操作,并期望在它之前被喜欢时出现错误 3501。
从 UI pov 这没有意义,我想将我的喜欢按钮 ui 更改为“不喜欢”状态,而不必喜欢我的对象并查看它是否失败。
谢谢!
有没有办法确定 Open Graph 中的对象是否被喜欢?
该文档似乎暗示我必须在我的对象上发布一个类似的操作,并期望在它之前被喜欢时出现错误 3501。
从 UI pov 这没有意义,我想将我的喜欢按钮 ui 更改为“不喜欢”状态,而不必喜欢我的对象并查看它是否失败。
谢谢!
如果您正在专门寻找 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'
)
您可以在link和link_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。不过,我很想被证明是错误的。
根据对象,如果对象具有相似的连接,您可以使用图形 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/