4

我正在从事我的一个宠物项目。我需要的功能之一如下:

  1. 用户单击我网页上的“分享到 Facebook”按钮,如此处https://developers.facebook.com/docs/plugins/share-button/

  2. 然后在 Facebook 弹出窗口中,用户可以点击“发布/提交”或取消或关闭窗口。有什么方法可以知道用户确实在他/她的 Facebook 时间线上发帖?

  3. 请假设,该用户不是我的朋友或从未喜欢过我的页面,但用户当前在另一个浏览器选项卡中登录 Facebook。

  4. 我看到 FB 事件,可以在https://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/的回调中捕获这些事件,例如 edge.create 可以像按钮一样捕获。

同样,有什么方法可以捕获“分享/发布到 fb”?

4

2 回答 2

4

我不相信你可以用分享按钮做到这一点。

但是,您可以使用 JavaScript SDK 启动相同的对话框。使用 SDK,您将能够捕获您提到的回调函数。

这是文档中给出的示例:

FB.ui(
  {
    method: 'feed',
    name: 'Facebook Dialogs',
    link: 'https://developers.facebook.com/docs/dialogs/',
    picture: 'http://fbrell.com/f8.jpg',
    caption: 'Reference Documentation',
    description: 'Dialogs provide a simple, consistent interface for applications to interface with users.'
  },
  function(response) {
    if (response && response.post_id) {
      alert('Post was published.');
    } else {
      alert('Post was not published.');
    }
  }
);
于 2013-11-14T07:35:23.833 回答
1

Lix 提供的答案不再起作用。UI 方法已更改,现在将是 Share Dialog(不是 Feed),它仅在“用户使用 Facebook 登录到您的应用并已授予 publish_actions”时才返回 post 对象。 https://developers.facebook.com/docs/javascript/reference/FB.ui

据我发现,没有订阅帖子共享的事件。

于 2014-06-26T06:15:42.843 回答