我有一个名为example.com的网站,其中有几个内部页面很受欢迎。
我创建了一个FB应用程序。
当用户验证FB应用时,我想获取所有用户喜欢的内容,例如:example.com/page1,example.com/page2等。
(单个用户在example.com的内部页面上最多可以有100多个喜欢)我基本上想要获取经过身份验证的用户在我的example.com网站上制作的所有喜欢的URL(以及关联的FB图形ID) 。
有办法做到这一点吗?
也许是通过facebook.api电话?或者可能是FQL查询?我对PHP或JS持开放态度。
请帮忙!感谢。
... fyi,我最初的想法是为每个用户提取所有他们的喜欢,解析每个用户以确保它来自example.com,然后将URL之类的内容存储到本地数据库中。当用户重新访问该网站时,我将查询我的数据库以查找与该用户关联的相关内容。这似乎不是最有效的,因为它需要存储我网站上的所有喜欢。任何帮助将不胜感激。
答案 0 :(得分:1)
如果您只是想在用户喜欢您网站上的网页时存储,为什么不使用Facebook JS SDK提供的edge.create
和edge.remove
事件?例如:
FB.Event.subscribe('edge.create', function(targetUrl, elm) {
// Make a request to server to save 'Like' information
});
FB.Event.subscribe('edge.remove', function(targetUrl, elm) {
// Make a request to server to remove 'Like' information
});
答案 1 :(得分:0)
我在类似插件的属性中看到,ref属性可能是您可以用来确定类似来源的地方。当然,你的href属性需要在like按钮的所有位置都相同。
或者,您可以使用Facebook洞察注册您的网站并在那里进行跟踪。见https://www.facebook.com/insights/
答案 2 :(得分:0)
用户API参考位于:https://developers.facebook.com/docs/reference/api/user/
以下是如何通过JS API获得所有喜欢的内容(除非他们有多个页面,你会得到喜欢的一部分):
FB.api('/me/likes', function(response) {
console.log(response);
});
您需要登录,并且需要user_likes权限。