我对网站上的 FB Like 存在疑问。我喜欢两个功能:页面帖子和页面照片。当我喜欢 FB Post 时,它会起作用,并且 Facebook 页面帖子和网站上的“喜欢”都会被计算在内。但是,当我尝试给照片点赞时,网站上的点赞计数器会增加到 1,一秒钟后就会下降到 0。
我有以下配置:
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=111111111111111111111";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
点赞按钮
'<fb:like href="' + urlToLike + '" send="false" layout="button_count" width="170" show_faces="false"></fb:like>';
用于帖子和照片的 URL,例如:
photoUrlToLike = 'http://www.facebook.com/photo.php?fbid=111111111111&set=a.502954436404881.121467.265145956852398&type=1&permPage=1';
postUrlToLike = 'http://www.facebook.com/mydummypage/posts/1111111111111111';
所以我的问题是,既然用户可以喜欢我网站上的帖子,为什么它不适用于照片。我在这里缺少什么?
编辑
我找到了 Facebook 照片 API:
http://developers.facebook.com/docs/reference/api/photo/
执行起来应该相当简单,但我现在几个小时都无法执行此操作。引用照片api:
likes
Create
You can like a photo by issuing a HTTP POST request to PHOTO_ID/likes connection with the publish_stream permission. No parameters necessary.
假设我的页面网址是:
http://www.facebook.com/dummypage
我的照片 ID 是 4234234234131
。照片位于虚拟页面的墙上。
我的帖子网址是什么样的?我应该向哪个 Url 发出 POST 请求?
最佳答案
我最近也被同样的问题困扰。经过几个小时的学习后,我明白这不是我的代码或我这边的任何问题的问题。这是一个小错误,甚至已报告给 Facebook。请检查这里: https://developers.facebook.com/bugs/530674523672388?browse=external_tasks_search_results_51fd2ae4d0e0e1621568068
还有一件重要的事情要说,问题是“喜欢”适用于帖子,但不适用于照片。但我得到的东西与此不同。包含外部链接内容附件和任何其他内容的帖子也会出现同样的问题!
我已经使用该系统管理了发布点赞,如所讨论的:您可以通过使用publish_stream权限向PHOTO_ID/likes连接发出HTTP POST请求来点赞照片。无需参数。当然,您需要每个用户都有一个有效的访问 token 才能正确执行此操作。您可以使用Facebook SDK for PHP 用于通过授权每个用户获取访问 token 。它适用于所有标准对象(帖子、照片、视频经过正确测试),只需要传递照片、帖子或视频的有效 ID。
代码很简单,我为此展示了假的 facebook 点赞和点赞(点赞之后)按钮:
function like_std_object($object_id){
try{
$like=$facebook->api('/$object_id/likes','post'); //post a like using api
}catch(FacebookApiException $e){
return false;
}
}
function unlike_std_object($object_id){
try{
$like=$facebook->api('/$object_id/likes','delete'); //post a un-like using api
}catch(FacebookApiException $e){
return false;
}
}
关于javascript - FB Like 无法在网站上使用照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13742094/