如何将网站url作为链接发送到多个Facebook好友

How to sent a website url as link to multiple Facebook Friends?

本文关键字:好友 Facebook 接发 链接 网站 url      更新时间:2023-09-26

我正在建立一个网站。我希望用户邀请Facebook的朋友来查看用户可以在我的网站上创建的页面。所以我正在努力完成它。但我认为FB Api并不是为了做我想做的事。我认为这是为了防止垃圾邮件,但我真的很想知道它是否可以做到。

这就是我到目前为止所拥有的。用户可以使用FB登录,我会提供一个不错的FB好友列表。每个朋友都有一个复选框。当用户提交表单时,我会收集所有检查过的朋友id:

var sendUIDs = '';
var mfsForm = document.getElementById('mfsForm');
for (var i = 0; i < mfsForm.friends.length; i++) {
    if (mfsForm.friends[i].checked) {
        sendUIDs += mfsForm.friends[i].value + ',';
    }
}

当我尝试的时候,我想出了这个"解决方案",向所有朋友发送相同的邀请:

FB.ui({
    method: 'apprequests',
    to: sendUIDs,
    message: "Hey come on look at my site",
    data:  "mywebsite.com/userlink"
});

看起来很棒,我想。正是我想要的。。。我想。

不幸的是,这只用于游戏?首先,我找不到邀请函。它在那里,但似乎消失了。然后我发现它在应用程序/游戏/活动选项卡中。

我通过在我的FB应用程序中添加画布,在"通知"选项卡中获得了通知。我想就快到了。嗯,不完全。。。我想让朋友们通过给定的数据链接访问我的页面,而不是一些奇怪的东西?数字

所以我放弃了这条路,尝试了另一种方式,想出了这个:

for (var i = 0; i < mfsForm.friends.length; i++) {
    if (mfsForm.friends[i].checked) {
        var uid = mfsForm.friends[i].value;
        FB.ui({
            to : uid,
            method: 'send',
            name: 'Visit my page',
            link: 'mywebsite.com/userlink'
        });
    }
}

这或多或少有效,但会为每个朋友生成一个弹出窗口,其中包含一个空消息框。不是很友好,嗯。。。愚蠢的:)

我也尝试过以前的设置,但我使用的不是"学徒":

FB.ui({
    method: 'send',
    to: sendUIDs,
    message: "Hey come on look at my site",
    data:  "mywebsite.com/userlink"
});

我在sendUID中尝试了这个:[1,2,…],只有1,2。。。

运气不好,因为FB只处理了一个名字。

我想一定有办法完成这项工作,但现在我很困惑如何继续。我想FB可以让事情变得更容易一点吗?

发送和共享对话框就是为此而构建的(在墙上共享网站URL或将其发送给PM中的朋友),只需让他在弹出窗口中选择朋友即可。这样,你甚至不需要授权用户,也不可能得到所有的朋友(只有那些授权了应用程序的人)。

关于消息参数:不允许预先填充消息,它必须是100%用户生成的。请参阅平台政策:https://developers.facebook.com/policy

2.3确保用户消息参数中的所有内容均由用户输入。不要预先填充。这包括帖子、消息、评论、,以及字幕。

FB.ui对话框无论如何都会忽略消息参数。