喜欢FB页面确认后不会触发edge.create事件

以下代码以前有效,但现在没有。 由于FB在喜欢页面时添加了确认框,因此在确认后不再触发edge.create。

$(document).ready(function() { $.getScript('//connect.facebook.net/en_US/sdk.js', function(){ FB.init({ appId : 'xxxxxxxxxxxxxx', xfbml : true, version : 'v2.9' }); FB.Event.subscribe('edge.create', function(response) { alert('Fired!'); }); }); });

我怀疑这是新Facebook更新的错误。 您可以在这里搜索问题https://developers.facebook.com/bugs ,如果尚未报告,也可以发布新的错误

您无法再订阅edge.create 。 目前(04/2018)它仍然在文档中 ,但它已被弃用并在不久的将来被完全删除。

按照设计,第三方应用程序无法知道何时单击“ 赞”按钮 。

您需要以不需要了解iframe中提供的Facebook Like按钮的方式设计您的应用程序。

引用此错误报告 :

不推荐使用edge.create事件( https://developers.facebook.com/docs/plugins/faqs/ ),因此工程师决定不为此案例修复它,因为它将在未来的api版本中完全取出。

从这一个 :

我知道这对您很重要,但不幸的是,由于政策问题,我们故意进行了弃用。

开发人员不应再检查用户按下了什么。

这些活动将无法再访问。 作为替代方案,您可以使用我们的Webhooks,并在每次有人喜欢您的某个Facebook页面时收到通知。

这是webhooks端点

资源

到目前为止的工作方案

     Facebook Like Button