所以我检查了互联网以在用户喜欢 facebook 页面后执行代码。
<html>
<head>
<title>Your Website Title</title>
</head>
<body>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '1517163758543318',
autoLogAppEvents : true,
xfbml : true,
version : 'v3.1'
});
FB.Event.subscribe('edge.create', function(href, widget) {
alert('You just liked the page!');
console.log('You just liked the page!11111111111111');
});
};
(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_GB/sdk.js#xfbml=1&version=v3.1&appId=380576395482732&autoLogAppEvents=1';
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<div
class="fb-like"
data-href="https://www.facebook.com/When-you-dont-know-what-to-do-281837755939599/"
data-layout="standard"
data-action="like"
data-size="small"
data-show-faces="true"
data-share="false">
</div>
</body>
</html>
有时它会发出警报,有时它不会,我想知道我做错了什么。有人能指出我正确的方向吗?或者给我一些关于这样做的建议。
我检查过的一些链接Facebook "Like" button callback , Facebook "Like" button callback help , Facebook FB.Event.subscribe "bug" with the edge.create callback , Can't get 'edge.create' callback to work with facebook javascript SDK , Facebook like callback function not working in opera , Facebook "Like" button callback help ,
最佳答案
如果你勾选https://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/v3.1 ,您会注意到 edge.create
事件类型不再列出。
Facebook 已经删除了这个 - 他们不希望网站能够通过向用户展示一个赞按钮然后等待这个事件来“强制”点赞。
您现在可以通过 JS SDK 订阅的唯一事件与身份验证状态更改以及嵌入到页面中的社交插件何时呈现有关。
https://developers.facebook.com/blog/post/2017/11/07/changes-developer-offerings/?locale=en_US :
edge.create and edge.remove JS SDK Events: 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.
关于html - Facebook 喜欢使用 edge.create 的回调事件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52042404/