我不能检索我的组使用Facebook SDK 5.1使用c#

本文关键字:SDK 使用 Facebook 检索 不能 我的 | 更新日期: 2023-09-27 18:06:43

我正在使用Facebook SDK,我正在尝试使用c#来获取用户订阅的组。代码如下

JsonObject Groups = (JsonObject)client.Get("me/groups");

代码执行后,我得到一个空对象。是我错过了什么吗?

点赞(JsonObject Groups = (JsonObject)client.Get("me/likes");)和好友(JsonObject Groups = (JsonObject)client.Get("me/friends");)的销售代码运行正常

我不能检索我的组使用Facebook SDK 5.1使用c#

需要提示用户user_groups扩展权限

因为我也有同样的问题,在任何地方都找不到帮助,我想我应该按照@DustyRoberts的要求,解释一下如何解决这个问题。

如果你在请求me/groups{user-id}/groups时得到一个空对象,那是因为你缺乏user_managed_groups权限(在图API版本2.3之前是user_groups)。

您可以通过在登录用户时添加scope参数来做到这一点。它是一个逗号分隔的权限列表。您可以在这里看到完整的权限列表(v2.4)。

    public static Uri GetLoginUrl(bool rerequestPermissions)
    {
        var client = new FacebookClient();
        dynamic para = new ExpandoObject();
        para.client_id = Settings.AppId;
        para.redirect_uri = Settings.LoginRedirUrl;
        para.response_type = Settings.ResponseType;
        para.scope = Settings.Scope; // Includes user_managed_groups
        // true if you've detected that one or more permissions have been denied
        // or revoked. It'll promt the user to grant the permissions again as when they
        // first used your app.
        if (rerequestPermissions)
            para.auth_type = "rerequest";
        return client.GetLoginUrl(para);
    }

更多关于检查权限的信息在这里(v2.4)

我希望这能帮助到一些人,因为这正是我需要的信息,使它工作