Facebook Like Button Callback JavaScript 2018

时间:2018-04-30 08:09:06

标签: javascript facebook facebook-javascript-sdk

我使用的现有Facebook Callback JavaScript代码存在问题。

每次我进入页面(我的Facebook按钮所在的页面)并按下" Like"来自Facebook的按钮,我得到一个弹出对话框,让我可以选择喜欢该页面或取消/关闭弹出窗口。

enter image description here

但是一旦按下" 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中检查了类似的问题,但似乎并非所有问题都已过时。希望有人能帮助我。

1 个答案:

答案 0 :(得分:1)

  

客户希望我有一个功能,网站的访问者/用户需要按“赞”按钮才能获得特定数量的积分。

然后请告诉您的客户,他们要求的是绝对不允许的。

https://developers.facebook.com/policy#properuse,4.5:

  

仅激励用户登录您的应用,在应用页面上输入促销信息,在某个地方办理登机手续,或使用Messenger与您的公司进行通信。不要激励其他行动。

另请参阅https://developers.facebook.com/docs/apps/examples-platform-policy-4.5,了解更多关于究竟是什么和不允许的例子。