【问题标题】:How to get ids of facebook invited friends by user in my asp.net4.0 web application如何在我的 asp.net4.0 Web 应用程序中按用户获取 facebook 邀请朋友的 id
【发布时间】:2011-12-26 05:28:38
【问题描述】:


我正在开发一个 ASP.NET 应用程序。我在我的应用程序中实现了 Facebook JavaScript API,用于连接 Facebook 并获取用户的 FB 好友列表。我已经成功地做到了这一点。 现在,我想计算用户邀请了多少朋友。 facebook API可以吗?用户可以选择多个朋友,我想计算用户选择和邀请了多少朋友,如果我们能得到,邀请的朋友 ID 是奖励。 请不要忘记,Facebook 出于安全原因更改了其 Oauth 设置。 在单击“发送邀请”按钮并将页面回发到

后,我还尝试获取 ids 值
if (Request.Form["ids"] != null)
        {
            span1.InnerHtml = "ids";
//put success code here..
        }
        else
        {
            span1.InnerHtml = "oops no id";
        }
      if (Page.PreviousPage != null)
{
span1.InnerHtml = "ids";
//put success code here..
}
else
{
span1.InnerHtml = "oops no id";
}


但在这种情况下,程序控制总是进入 else 条件,这意味着页面回发后表单返回空值。 有什么方法可以获取受邀朋友的ID。 谢谢。

【问题讨论】:

    标签: facebook asp.net-4.0


    【解决方案1】:

    如果您使用 Facebook 请求发送邀请(您确实应该这样做,它就是为此而设计的),获得受邀朋友的唯一方法是通过 Facebook Requests Dialog 回调:

    FB.ui({method: 'apprequests', message: 'Whoa!'}, callback);
    
    function callback(response){
      // response.to now contain array of invited users ids
      console.log('Invited friends ids', response.to);
      if (response.request) {
        console.log('Efficient Request id', response.request);
      } else {
        console.log('Requests Ids', response.request_ids);
      }
    }
    

    无法通过 Graph API 或 FQL 获取用户发送的请求,只能获取用户接收的请求。如果您需要汇总发送的邀请计数,您可以保存用户发送的所有请求并依赖此数据...

    【讨论】:

      【解决方案2】:

      好的,我终于解决了这个问题并获得了邀请的朋友 ID.. 我们知道我们使用 javascript sdk 进行 FB 连接,所以我的解决方案是关注 Java 脚本:

      只需在 .js 文件中更改您的 facebook 连接 javascript 代码即可。在 fb:request-form 标签中使用 Get 或 Request 方法而不是 Post 方法。
      <script type="text/javascript> var fbhtml = "<fb:serverFbml width=\"" + width_of_invitation_div + "\"> <script type=\"text/fbml\"><fb:fbml><fb:request-form action=" + window.location + " method="REQUEST" invite="true" type="" + type_of_fb_request_form + "" hold=" /><br mode="></fb:request-form></fb:fbml></script></fb:serverfbml>" </script>

      邀请发送给用户选择的朋友后,您会在 url 中获得 ids[]。 您可以通过查询字符串获取这些 id,并通过逗号 (,) 拆分 id 并存储在数组中。
      希望这对其他开发者有所帮助。

      【讨论】:

      • 您在这里拥有的是 FBML,它正处于被 Facebook 弃用的阶段。引用FBML reference 顶部的通知:«2012 年 1 月 1 日:平台将不再支持 FBML。 2012 年 6 月 1 日:FBML 应用程序将不再工作。所有 FBML 端点都被删除。»
      • 感谢您的关注,您是对的,但现在有什么新方法可以在我的 asp.net 网络应用程序中获取朋友 ID。请建议我获得整个过程的新想法。
      • 非常感谢。但是我检查了我的应用程序,但无法从我的网站发送请求。实际发生的是,用户可以登录并获取 FB 好友的好友列表并选择他们的好友。一旦他们选择朋友并尝试发送邀请,什么都不会发生。 “Loding..”文本出现几秒钟,然后用户停留在该页面上。我的网站用户无法向 FB 好友发送邀请。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-26
      • 2015-07-29
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多