Twitter共享弹出窗口成功响应

时间:2019-01-21 10:53:20

标签: javascript html twitter callback share

我的网站上有这些共享弹出窗口,用户可以在其中共享我们的页面。这就是我真正想要的:检查用户何时成功(回调或响应)共享了帖子。

我找到了以下解决方案:StackOverflow。 但这仅在tweet事件上触发,tweet事件与click事件相同地触发,因此不是这样。有没有办法检查他们是否真的共享了它?

更新:我尝试检查Twitter的Streaming API是否可以帮助我解决这一问题。但这只给我几分钟后发布的推文。应该立即执行。所以这也不是一个选择。

其他更新:我的解决方法都没有用

我为Facebook所做的工作有效:

function (d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) {

    } else {
        js = d.createElement(s);
        js.id = id;
        js.src = "//connect.facebook.net/en_US/sdk.js";
        fjs.parentNode.insertBefore(js, fjs);
    }

}(document, 'script', 'facebook-jssdk'));

function shareFacebook() {

    FB.init({
        appId: 'apiid',
        xfbml: true,
        version: 'v2.5'
    });
    FB.ui(
        {
            method: 'share',
            href: 'google.com'
        },
        // callback
        function (response) {
            if (response && !response.error_message) {
                alert('shared!')
            }
        }
    );
}

1 个答案:

答案 0 :(得分:1)

答案在您发布的链接中。使用链接https://stackoverflow.com/a/6932354/10934956中显示的twitter js小部件和intents api。

正如您所说的,这不仅是用来监听窗口关闭时的声音。您可以订阅特定的事件侦听器,例如加载,渲染,调整大小,tweet,关注,转发,喜欢和单击。

您可以将监听器添加到tweet事件中,然后插入回调,就像我提供的链接一样。

如果仅在关闭窗口时才想获得回调,则可以评估事件的URL,以查看是否在完整的Tweet URL上。当然,这不是100%可靠的。

编辑:如果不使用此小部件,出于安全原因,无法将回调添加到其他选项卡/浏览器。甚至同一浏览器中的标签页都保持完全独立,因此站点A无法读取站点B上可能有重要信息的任何内容。