我正在使用ASP.net c#作为一个集成了Facebook API的web应用程序。我的应用程序将允许用户创建一个组共享代码。我需要使用Facebook API让用户邀请朋友从Facebook加入他的组在我的应用程序。这是一个作业的要求,所以请不要给建议,以创建一组用户注册与我的网站。
到目前为止,我有一个请求对话框与所有的朋友列出(MultiFriendSelector())与此代码:<p> Click <span id="span-link" onclick="sendRequestViaMultiFriendSelector(); return false;">here</span> to add friends from your Facebook account to your group! </p>
但是我被困在如何获得这些被邀请的用户的id和详细信息,所以我可以将它们保存在我的数据库中,并允许他们访问他们被邀请到的组。请问我该怎么做?我似乎找不到任何与此有关的资料。
顺便说一下,我知道有一个相关的问题给出了这个代码:
if( Request["ids"] != null )
((Site)Master).FbInviteSent(Request.QueryString.GetValues("ids"));
但是我不知道Master是什么,我不能让它工作。
谢谢你的帮助
当你调用请求对话框时,你可以传递一个回调函数:
function sendRequestViaMultiFriendSelector() {
FB.ui({method: 'apprequests',
message: 'My Great Request'
}, requestCallback);
}
requestCallback将接收响应,该响应返回被邀请用户的facebook id
function requestCallback(response){
for (var i = 0; i < response.to.length; i++) {
fb_id = response.to[i];
// Do something with fb_id.
}
}
从另一个答案中的代码来看,看起来facebook API将使用id的查询字符串参数回调到您的页面。
。它会用这样的url调用您的站点。
44
然后可以使用
从查询字符串中提取idstring myIds = Request.QueryString["ids"];
然后可以将它们转换为数组。
var id = myid . split (',');
如果你正在使用MVC,那么你可以利用模型绑定器,只需在视图模型中放置一个int数组,它就会自动绑定。
下面的答案针对你的具体问题,所以我将以此作为起点。
facebook:使用多个朋友选择器和JS SDK发布到多个朋友's墙上
如果您对上述解决方案有任何疑问,请告诉我。
对
史蒂夫