0

我的网站允许每个用户在 facebook 上共享一个链接,比如http://www.my-site.com 。

我想计算每个用户分享我的网址的次数,以及最后一次分享的日期。考虑到有人会使用 FB SDK(请原谅咖啡脚本),这将非常容易:

link = "my-site.com"

FB.ui
    method: "feed"
    link: link
    from: from
  , (response) ->
    unless response is null or response is undefined
      $.ajax
        dataType: "json"
        data: response
        url: some-url
        success: (data, textStatus, jqXHR) ->
          // Do stuff

我什至可以让自己获得更多创建和使用 facebook 的事件订阅之一,例如:

FB.Event.subscribe "message.send", message_send_callback

但是,据我所知,FB.ui() 提供的任何对话框都不允许用户选择他想发布到哪个组/墙/朋友,就我而言,这是强制性的。幸运的是,非 SDK 共享对话框确实允许这样做,但在获取发布事件和响应时提出了更大的挑战,因为它迫使我向弹出窗口 ( var popup = window.open(...); popup.addEventListener...) 添加一个 onload 事件侦听器,然后向 post 事件添加另一个事件侦听器,这当然具有挑战性,因为弹出窗口会打开另一个域 facebook,我无法控制它。

有没有办法做我想要完成的事情?我是否缺少使用户能够选择发布位置的 FB.ui() 对话框?如果没有 - 有没有办法获取共享对话框的事件和响应?

4

1 回答 1

0

不,我认为目前还没有办法将“共享”对话框与 FB.ui 一起使用,或者让它提供任何反馈。

您可以尝试使用带有to参数的提要对话框 - 如果您愿意在其前面放置一个自己的对话框,让用户选择发布目标。

尽管这会将您限制在他们的朋友和您可能可以建议的页面上——如果后者应该是特定于用户的,您将必须请求获得许可才能阅读他们的喜欢等。

于 2014-02-18T19:40:25.907 回答