我使用的现有Facebook Callback JavaScript代码存在问题。
每次我进入页面(我的Facebook按钮所在的页面)并按下" Like"来自Facebook的按钮,我得到一个弹出对话框,让我可以选择喜欢该页面或取消/关闭弹出窗口。
但是一旦按下" Like",回调就不起作用了。回调只有在我第二次及以后点击" Like"(或" Dislike")时才有效。
这是我正在使用的代码。
<script>
window.fbAsyncInit = function() {
FB.init({
appId : 'MY_APPID',
autoLogAppEvents : true,
xfbml : true,
version : 'v2.12'
});
FB.Event.subscribe('edge.create', function (response) {
console.log('Liked: ' + response);
});
FB.Event.subscribe('edge.remove', function (response) {
console.log('DisLiked: ' + response)
});
};
(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 = 'https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.12&appId=MY_APPID&autoLogAppEvents=1';
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<div id="fb-root"></div><div class="fb-like" data-href="https://www.facebook.com/MyURL" data-layout="standard" data-action="like" data-size="large" data-show-faces="true"></div>
我在StackOverflow中检查了类似的问题,但似乎并非所有问题都已过时。希望有人能帮助我。
答案 0 :(得分:1)
客户希望我有一个功能,网站的访问者/用户需要按“赞”按钮才能获得特定数量的积分。
然后请告诉您的客户,他们要求的是绝对不允许的。
https://developers.facebook.com/policy#properuse,4.5:
仅激励用户登录您的应用,在应用页面上输入促销信息,在某个地方办理登机手续,或使用Messenger与您的公司进行通信。不要激励其他行动。
另请参阅https://developers.facebook.com/docs/apps/examples-platform-policy-4.5,了解更多关于究竟是什么和不允许的例子。