Like FB page doesn't fire edge.create event after confirming

前端 未结 4 377
鱼传尺愫
鱼传尺愫 2020-12-20 21:03

The following codes have worked before but not now. Since FB added the confirm box when liking a page, the edge.create was no more fired after confirming.

           


        
相关标签:
4条回答
  • 2020-12-20 21:09

    Working solution until now:

    <!doctype html>
    <html lang="en" xmlns:fb="https://www.facebook.com/2008/fbml">
    <head>
        <meta charset="utf-8">
        <title>Facebook Like Button</title>
    </head>
    <body>
    <div id="fb-root"></div>
    <script>
        window.fbAsyncInit = function () {
            FB.init({appId: '1906177386133148', status: true, cookie: true, xfbml: true});
            FB.Event.subscribe("edge.create", function (targetUrl) {
                console.log('edge.create');
            });
            FB.Event.subscribe("edge.remove", function (targetUrl) {
                console.log('edge.remove');
            });
        };
        (function () {
            var e = document.createElement('script');
            e.async = true;
            e.src = document.location.protocol + '//connect.facebook.net/es_ES/all.js';
            document.getElementById('fb-root').appendChild(e);
        }());
    </script>
    <fb:like></fb:like>
    </body>
    </html>
    
    0 讨论(0)
  • 2020-12-20 21:16

    You can no longer subscribe to edge.create. At this time (04/2018) it is still in the documentation, but it is deprecated and to be fully removed in the near future.

    By design, there is no way for a third party application to know when the Like button is clicked.

    You will need to design your app in a way that does not require you to know when the Facebook Like button provided in the iframe is clicked.

    Referencing this bug report:

    The edge.create event is deprecated (https://developers.facebook.com/docs/plugins/faqs/), so the engineers have decided not to fix it for this case since it will be taken out completely in the future api release.

    And from this one:

    I understand that it's important to you, but unfortunately we did the deprecate on purpose due to policy issue.

    Developers are not supposed to check the user press any more.

    0 讨论(0)
  • 2020-12-20 21:18

    These Events will no longer be accessible. As an alternative, you can use our Webhooks and be notified every time someone likes one of your Facebook Pages.

    This is the webhooks endpoint

    Source

    0 讨论(0)
  • 2020-12-20 21:25

    I suspect this is a bug from the new Facebook's update. You can search for the issue here https://developers.facebook.com/bugs, also can post a new bug if it hasn't been reported yet

    0 讨论(0)
提交回复
热议问题