从MultiFriendSelector获取受邀朋友列表

时间:2013-04-22 09:58:33

标签: c# asp.net facebook multi-friend-selector

我使用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"));

但我不知道师父是什么,我无法让它工作。

感谢您的帮助:)

2 个答案:

答案 0 :(得分:1)

通过查看其他答案中的代码,看起来facebook API将使用查询字符串参数ids回调您的页面。

即。它会用这样的网址给你的网站打电话。
http://wwww.yoursitesulr.com/mypage.aspx?ids=13,22,44

然后,您可以使用

从查询字符串中提取id

string myIds = Request.QueryString [“ids”];

然后,您可以将它们转换为数组。

var ids = myIds.Split(',');

如果您正在使用MVC,那么您可以利用模型绑定器,只需在视图模型中放入一个int数组,它就会自动绑定。

以下答案针对您的具体问题,因此我将此作为起点。

Faceboook: Posting to Multiple Friend's Walls Using Multiple Friend Selector and JS SDK

如果您对上述解决方案有任何疑问,请与我们联系。

此致

史蒂夫

答案 1 :(得分:1)

每当您调用请求对话框时,您都可以传递回调函数:

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.
  }
}